我正在开发适用于 Android 和 iOS的Xamarin Forms应用程序。我们使用以包形式提供的第三方 SDK .aar
,构建操作设置为LibraryProjectZip
. 然后,我们从代码的表单、iOS 和 Android 部分调用。如果我没记错的话,链接在调试模式下工作得很好。
我没能把Linker+ProGuard
工作放在一起。我已经阅读了几天并尝试了许多解决方案。我有java codes 1 and 2
- 所以我更新了 ProGuard 并开始工作。然后链接产生错误 -UnauthorizedAccessException
所以我不得不去相应的文件夹并删除ReadOnly
权限。然后项目构建成功,但应用程序功能丢失,即使它运行,Device Log
我可以看到一些类丢失了。
为了解决这个问题,我创建了一个ProGuard.cfg
并添加了大多数因该"-keep"
命令而崩溃的程序集。但是,我似乎无法找到一种方法来保留这个.aar
包的功能
有什么建议么?
我在带有 JDK 1.8 的 Windows 10 上使用 VS 2017 和 Xamarin 7.4,以管理员身份运行。尝试链接Sdk Assemblies / User&Sdk Assemblies
。Multidex
开启。我尝试将所有项目的程序集名称放在“跳过链接程序集”字段中,但没有结果。在设备日志中,我得到了失败调用的包名称,因此我也尝试将其添加到 ProGuard,但没有帮助。(看起来像"-keep class com.something.something"
)