我们正在为使用 Android 手机的客户提供一个默认应用程序。哪个用户不能卸载。我使用了 this example 中的设备管理功能但是用户可以通过从设置中停用来删除应用程序。
我发现另一种可能的方法是像所有谷歌应用程序一样在系统/应用程序文件夹中安装应用程序(我不确定)。
为此,我需要 root 访问权限,所以我打算执行以下操作,但不确定如何实现它。
- 以编程方式根设备
- 在 System/apps 文件夹中安装应用
- > 再次取消根设备
像许多系统应用程序一样,它们如何实现此类功能?
请帮忙。
最佳答案
我制作了自定义启动器,无法卸载。
- 重要:root 手机
- 从
恢复模式
将应用程序安装为系统应用程序(安装到/system/app
)。 - 可选:订阅包删除,检查用户是否尝试删除您的应用 - 并且不允许他执行此操作(关闭包删除 Activity )
我制作了存档,可以从恢复模式
安装。此外,我的 Launcher
需要自定义 Superuser
应用程序(我不想看到来自 Superuser
应用程序的通知,当我的 Launcher
运行 root 命令 - 静默授予 root 访问我的 Launcher
)。
结果是:Launcher
应用程序,作为系统应用程序安装(无法删除)。我还阻止了其他启动器的安装,添加了允许应用程序的白名单(不要安装可以管理文件系统和修改重要内容的应用程序)。
这个解决方案充满技巧,但比自定义ROM更容易实现。
如果您自定义 ROM,并以某种方式将其安装到设备(例如,联系来自中国的设备制造商,请求目标设备驱动程序并在设备上构建 ROM),您可以使用系统 key 签署您的应用程序,将其与其他系统应用程序,然后它无法删除。在这种情况下不需要 root,但它需要更多的时间和精力来实现。
如果您将以编程方式对设备进行 root,那么您应该有利用它来进行 root。 并且不同的设备有不同的 root。
关于android - 如何在无法卸载的android中创建应用程序?我们可以制作系统应用程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25446236/