我们是一家Android软件公司,我们在更新系统应用程序时遇到问题。 某些设备中预装的原始应用程序是由另一家公司开发的。 现在我们已经在谷歌播放中使用相同的密钥和相同的包发布我们的应用程序,但我们遇到了android 2.3设备的问题。 当用户更新他们的应用程序时,它会与下一条日志消息崩溃:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.xxx.es/com.yyy.es.activities.InitialActivity}: java.lang.ClassNotFoundException: com.yyy.es.activities.InitialActivity in loader dalvik.system.PathClassLoader[/system/app/xx_v1.0.1_android-generic_es.apk]
似乎是尝试在旧版apk中打开活动,而不是在/data/app
中的最新版本中打开活动。
如果用户清除应用数据,则问题仍然存在。修复它的唯一方法是重启设备。
我已经看到旧apk的清单android有:android:persistent = true但是新的apk没有它。 我们不能经常测试它,因为市场签名来自另一家公司,因此我们必须在没有测试的情况下搜索解决方案,这是非常困难的。
拜托,你能帮助我们吗?
提前多多谢谢。