为什么应用程序在将其复制到/ system后不会成为系统应用程序?

时间:2016-03-28 18:11:56

标签: android linux nullpointerexception android-permissions

我有一个应用程序,我需要创建一个系统应用程序,以赋予它一些额外的权限。我希望将其移至/system/app。我使用ES File Explorer来做到这一点。根据我的理解,该应用必须安装在SD Card上,但即便如此,它也不会成为系统应用。以下是我的尝试(与移动或修改文件相关的任何步骤都是使用ES File Explorer)完成的:

- 不使用SD卡:

  1. 我使用Android Studio运行应用程序,在设备上安装apk。

  2. 我打开/ data / app并复制apk文件。

  3. 我打开/ system / app,我粘贴了apk。

  4. 我重新启动设备。

  5. 我在屏幕上找到应用程序图标,我单击它,但未授予系统权限。请注意,如果我在步骤2中使用剪切而不是复制,那么当我重新启动设备时,我找不到应用图标,尽管它是' s apk是/system/app

  6. - 使用SD卡时:

    1. 我使用Android Studio运行应用程序,在设备上安装apk。

    2. 我打开/ data / app并剪切apk文件。

    3. 我打开/ extSdcard并粘贴apk文件。

    4. 我从/ extSdCard复制apk,然后将其粘贴到/ system / app中。

    5. 我重新启动设备。在这种情况下,我找到了应用程序图标,但是当我打开它时,我得到了这个NullPointerException错误。

    6. 修改 要解决NullPointerException错误,我要长时间点击/ system / app中的应用程序图标,选择属性,单击权限旁边的更改,检查读取下的所有内容,只检查写入下的所有者复选框,然后取消选中执行下的所有内容,然后我单击确定。 现在的问题是在重新启动设备后,我找不到应用程序图标,虽然它在/ system / app和/ extSdCard / android / data中大小约为47 MB​​,但当我打开时来自设置的应用程序管理器,我发现它带有SD卡图标(不是Android应用程序图标),大小为0.0 B,为什么会发生这种情况?

      如何将应用程序正确地制作为系统应用程序?

1 个答案:

答案 0 :(得分:0)

事实证明,我们必须使用ES File Explorer更改app文件夹和apk文件权限。我按照本教程进行了很好的工作:

http://howto.highonandroid.com/android-how-to-tutorials/how-to-install-user-apps-as-system-apps-on-your-android/