-1

我现在无法在基于台湾 mtk android 手机平台的 system.img 中添加预构建的 apk,当我将此 apk 推送到设备上时,重启手机后,该 apk 可以成功安装,但如果我将此 apk 添加到alps/out/target/product/$prj/system/app 或者vendor/mediatek/$prj/artifacts/out/target/product/$prj/system/app,生成一个system.img,apk不能正常安装,logcat说:

a.lang.RuntimeException: Unable to instantiate activity
ComponentInfo{com.sec.android.widgetapp.ap.hero.accuweather.widget/com.sec.android.widgetapp.ap.hero.accuweather.widget.WeatherClock}: 
java.lang.ClassNotFoundException: com.sec.android.widgetapp.ap.hero.accuweather.widget.WeatherClock.

谁能告诉我问题是什么?

4

1 回答 1

1

当包管理器安装属于系统分区的应用程序时,与在数据分区上安装应用程序不同。看起来您的应用正在使用其他地方的库。通常,当您在数据上安装时,会在应用程序数据目录中创建一个 lib 目录并符号链接到 /data/app-lib/。当应用程序安装在系统上时,它们所依赖的任何库都应该是 system/lib 或 vendor/lib 中 system.img 的一部分。复制库不是为了创建已包含在设备共享位置中的库的多个副本。您可能想要复制 apk 并将其解压缩并查找其中包含的任何库,并确保将它们放置在 system/lib 或 system/framework 中。

希望对一些人有所帮助。

于 2013-08-07T12:25:16.883 回答