2013-07-19 56 views
0

背景:我正在开发一个用于商业用途的应用程序,它将与专用设备一起销售。换句话说,客户会从我们这里购买一个android桌面,并且使用自定义的ROM来限制设备在我们的软件中的使用。Android:我如何获得set_time权限?

问题: Android设备中的时钟同步到服务器的操作至关重要,这意味着应用程序需要能够更新时间。

,我迄今发现的信息似乎是粗略TBH,但是这是我发现:

  • 我需要SET_TIME权限
    • 为了得到这个我将需要安装作为一个系统应用程序(我通过将apk放在系统/应用程序文件夹中)...
    • ...而且我将需要使用与构建系统映像相同的密钥签署我的应用程序
    • 我会需要将android:sharedUserId =“android.uid.system”添加到清单

上午我在正确的轨道?

+1

如果这是自定义ROM,修改自定义ROM中的SNTP逻辑以引用所需的SNTP服务器似乎更简单,而不是尝试在应用程序级别执行此操作。 – CommonsWare

+0

@CommonsWare - 这听起来像一个合理的想法,我们还没有开始在ROM上工作,所以我不确定什么是和不可能在该级别。 我们遇到可怕的时间漂移​​的设备,所以我认为他们根本没有参考SNTP。 – CurlyPaul

回答

1

那么我读了一些,我仍然不确定是否有可能使用NTP服务器,即使建立我自己的ROM。大多数Android设备将使用NITZ从移动网络获取日期,但我的目标设备仅限WIFI。

我在这里找到了答案Setting system time of ROOTED phone - 特别是@ CrazyCoder的答案,揭示了他的ClockSync应用程序的工作原理。

此解决方案要求设备是根植的,但不需要是系统应用程序或与之相关的任何权限。

相关问题