• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 通过 mono 框架在 iOS 应用程序中使用现有的 DLL

[复制链接]
菜鸟教程小白 发表于 2022-12-11 22:09:26 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

对于我当前的一个 iOS 项目,一些业务逻辑已通过 DLL 和 native C++ 绑定(bind)代码提供给我,我必须在动态库 (dylib) 中重新编译,然后通过此动态库使用 DLL。 最后像下面这个例子一样使用 DLL:

int main(int argc, char** argv){
  RTEnvironnement::CreateRTEnvironnement("../dll/RT.dll");
  RT::RT_Facade *  mFacade = new RT::RT_Facade();
  RT::RT_Data_Projet *  mProjet = new RT::RT_Data_Projet();
  mProjet->Load_From_XMLFile(argv[1]);
... 

对象 RTEnvironnement、RT_Facade、RT_Data_Projet 由绑定(bind) C++ 动态库提供。我无法获取基本 DLL 的代码,我必须像在 IOS 上一样使用 DLL。

我目前正在研究 mono touch 是否可以让我的 IOS 应用程序(基于 Xcode 的基本 iOS Objective C)启动使用标准 mono 框架构建的 DLL。在购买许可证之前,我必须确保 MonoTouch 能够做到这一点。

有人做类似的事情吗?有最简单的方法吗? 如果我选择使用 MonoTouch,我可以将我的项目保留在 Xcode 中并在 MonoDevelop 中构建 dylib,然后将 lib 导入 Xcode 项目吗?

感谢您的帮助。



Best Answer-推荐答案


the DLL that as been build with the standard mono framework.

MonoTouch(类似于 Android 的 Mono)提供了一个与 Silverlight 类似(超集)的基类库 (BCL) 配置文件。然而,它是整个 Mono 框架的一个子集。

因此,非常通常针对完整框架编译的程序集无法在 MonoTouch 上运行除非它们被重新编译(针对 MonoTouch BCL)。 p>

If i choose to use MonoTouch, can i keep my project in Xcode and just build the dylib in MonoDevelop and then import the lib the Xcode project ?

它比这更复杂(例如,MonoDevelop 不会给你一个 .dylib)。您可能可以通过谷歌搜索一些说明来执行此操作,但请注意,这种情况不受支持

支持的替代方法是让 MonoTouch 驱动应用程序,加载您需要的任何程序集,公开这些程序集,然后将控制权转移到您的 Objective-C 代码。

关于ios - 通过 mono 框架在 iOS 应用程序中使用现有的 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9800536/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap