我正在开发一个使用谷歌地图的应用程序。该应用程序工作正常,直到我导出签名的应用程序包。代码被混淆后,地图不再加载。我对 ProGuard 还很陌生,我尝试过修改 proguard.cfg 但到目前为止没有任何效果。
以下是我尝试过的一些不同的事情:
-libraryjars C:/Program Files/Android/android-sdk/add-ons/addon-google_apis-google_inc_-10/libs/maps.jar
-keep class android.location.** { *; }
-keepnames class com.google.android.maps.** {*;}
-keep public class com.google.android.maps.** {*;}
-dontwarn com.google.android.maps.GeoPoint
-dontwarn com.google.android.maps.MapActivity
-dontwarn com.google.android.maps.MapView
-dontwarn com.google.android.maps.MapController
-dontwarn com.google.android.maps.Overlay
Thanks
编辑:对于 Android V2 版 Google 地图 具体来说:
以防万一有人看到这个并遇到类似的问题 - 我收到了Parcelable
RuntimeException
当我尝试查看第二张地图时(例如,Activity A
有一个地图实例,然后移动到Activity B
,另一个具有不同参数的实例),指向我假设的 google 包中的混淆类名。
我添加后
-keep class com.google.android.gms.maps.** { *; }
-keep interface com.google.android.gms.maps.** { *; }
对于我的 proguard-project.txt 一切似乎都正常工作
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)