Qt on Android应用安装到/system/app下
我是android新手,现在有一个问题需要各位牛人帮忙解答一下。
我有一个应用,应用中需要加载自己的库liblauncher.so,这个应用手动安装到用户目录下可用正常运行,现在需要把应用移到/system/app下,我的操作如下:
1、拷贝apk到/system/app下
2、拷贝so到/system/lib下
3、修改apk和so的权限及用户组为 644/root/root
运行时,程序在加载so时报错
01-01 14:03:43.920: W/System.err(4139): java.lang.Exception: Can't find main library 'launcher'
01-01 14:03:43.920: W/System.err(4139): at org.qtproject.qt5.android.QtNative.startApplication(QtNative.java:201)
01-01 14:03:43.920: W/System.err(4139): at org.qtproject.qt5.android.QtActivityDelegate.startApplication(QtActivityDelegate.java:648)
01-01 14:03:43.920: W/System.err(4139): at java.lang.reflect.Method.invokeNative(Native Method)
01-01 14:03:43.920: W/System.err(4139): at java.lang.reflect.Method.invoke(Method.java:511)
01-01 14:03:43.920: W/System.err(4139): at org.qtproject.qt5.android.bindings.QtActivity.loadApplication(QtActivity.java:265)
01-01 14:03:43.920: W/System.err(4139): at org.qtproject.qt5.android.bindings.QtActivity.startApp(QtActivity.java:658)
01-01 14:03:43.920: W/System.err(4139): at org.qtproject.qt5.android.bindings.QtActivity.onCreate(QtActivity.java:889)
01-01 14:03:43.920: W/System.err(4139): at com.cslc.edbox.EDBoxActivity.onCreate(EDBoxActivity.java:26)
01-01 14:03:43.920: W/System.err(4139): at android.app.Activity.performCreate(Activity.java:5104)
01-01 14:03:43.920: W/System.err(4139): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
01-01 14:03:43.920: W/System.err(4139): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
01-01 14:03:43.920: W/System.err(4139): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
01-01 14:03:43.920: W/System.err(4139): at android.app.ActivityThread.access$600(ActivityThread.java:141)
01-01 14:03:43.920: W/System.err(4139): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
01-01 14:03:43.920: W/System.err(4139): at android.os.Handler.dispatchMessage(Handler.java:99)
01-01 14:03:43.920: W/System.err(4139): at android.os.Looper.loop(Looper.java:137)
01-01 14:03:43.920: W/System.err(4139): at android.app.ActivityThread.main(ActivityThread.java:5041)
01-01 14:03:43.920: W/System.err(4139): at java.lang.reflect.Method.invokeNative(Native Method)
01-01 14:03:43.920: W/System.err(4139): at java.lang.reflect.Method.invoke(Method.java:511)
01-01 14:03:43.920: W/System.err(4139): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:816)
01-01 14:03:43.920: W/System.err(4139): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:582)
01-01 14:03:43.920: W/System.err(4139): at dalvik.system.NativeStart.main(Native Method)
另外:我把so放在 /data/app-lib/xxxx/下也可以正常运行。