Java 如何限制对电话的访问';的基本功能,没有人可以卸载我的应用程序,完全锁定?

Java 如何限制对电话的访问';的基本功能,没有人可以卸载我的应用程序,完全锁定?,java,android,android-ndk,Java,Android,Android Ndk,最近,我的雇主要求我构建一个应用程序,该应用程序将部署在现场(针对现场工作人员),具有以下功能: -当手机启动时,应用程序会自动启动,没有人能够使用其他手机的功能,如通话、短信等 此外,该应用程序应该是这样的,它不能被卸载。 想象一下,除了我的应用程序,对手机功能的访问完全受限;完全封锁的情况 那么,我该怎么做呢?我需要建立一个全新的自定义ROM加载我的应用程序吗?还是我必须使用应用程序的“权限”来锁定系统?哪个更好 我应该从哪里开始? 我的应用程序必须使用SQLite、GPS、Wifi/2G/

最近,我的雇主要求我构建一个应用程序,该应用程序将部署在现场(针对现场工作人员),具有以下功能: -当手机启动时,应用程序会自动启动,没有人能够使用其他手机的功能,如通话、短信等

此外,该应用程序应该是这样的,它不能被卸载。 想象一下,除了我的应用程序,对手机功能的访问完全受限;完全封锁的情况

那么,我该怎么做呢?我需要建立一个全新的自定义ROM加载我的应用程序吗?还是我必须使用应用程序的“权限”来锁定系统?哪个更好

我应该从哪里开始? 我的应用程序必须使用SQLite、GPS、Wifi/2G/3G网络和摄像头接入

如有任何建议,将不胜感激。
谢谢

首先我要说的是一个如此可怕的计划


您不能阻止系统卸载您的应用程序。根据客户的要求,您只能做一件事。也就是说,当手机启动时,使用BOOT_COMPLETED intent filter启动应用程序

您可以创建一个应用程序,该应用程序将监听
活动启动事件。当你抓住这个事件,你可以开始你自己的活动。此活动将支持卸载活动。要捕获事件,请使用logcat读取

如果您打算启动自己的android手机,请将您的应用程序放入android源代码中,就像Myfiles、Gallery等其他本机应用程序一样。及

修改源,以便在
设置-->中管理应用程序
您的申请没有条目


嗯,BOOT_COMPLETED intent filter只会使我的应用程序在启动后运行。但是用户可以使用标准的“后退”按钮退出我的应用程序:无论如何,我可以确保我的应用程序忽略了这一点吗?用户无法退出我的应用程序?您可以覆盖backbutton以防止用户停止您的应用程序。但用户总是可以强制停止您的应用程序设置,但如果我的应用程序在手机启动时启动,用户如何才能访问“手机设置”?此外,我可以确保在发生崩溃/锁定的情况下重新启动手机/应用程序,并将数据库备份和错误日志上载到服务器。是否可以覆盖“主页”和“搜索”按钮?谢谢讨论。将Ravindra的回复标记为答案,因为它非常接近我想要实现的目标。通过侦听并使用“活动启动”事件,还可以确保用户无法打开任何其他应用程序(包括内置应用程序,如拨号器、管理应用程序)?对吗?还有“修改源代码”我想你说的是修改自定义ROM的源代码?@quantumstates是的,但这不会造成瓶颈吗?就像在用户启动另一个应用程序的活动之前自动启动一个活动(我的应用程序)?将您的活动标记为答案,因为它非常接近我想要实现的目标。谢谢你的讨论。。