2013-07-05 29 views
0

我正在制作一个应用程序。我希望应用程序启用自己的Android 2.2和更早的设备上的数据连接(3G)。我添加了权限,但我得到的错误“权限只授予系统应用” ..有人能告诉我如何克服this.THIS有工作ON NON_ROOTED PHONES..These是我加入权限错误在我的应用程序

android.permission.CHANGE_NETWORK_STATE 

android.permission.CHANGE_NETWORK_STATE  

android.permission.ACCESS_NETWORK_STATE 

android.permission.MODIFY_PHONE_STATE 

android.permission.READ_PHONE_STATE 

的权限,如果有任何替代方法,其备受欢迎

+0

你尝试在你的代码中使用哪种方法? – flogvit

+0

@ CharlieCollins-I猜到了...... Anyway有没有什么办法可以从我的应用程序中启用数据 – user2429689

+0

如果你只想在Android 2.2和更早版本的手机上工作,它可能(不确定)。在> 2.2上,您无法使用系统应用程序权限(这些权限是为系统应用程序,设备附带的,或者由运营商或根设备上安装的系统应用程序保留的)。如果您刚刚在构建时发现错误,请禁用LINT警告/错误,您*可能*仍然能够在旧设备上安装并运行APK。 –

回答

2

我有这个在我上一个项目中遇到的问题以及我们不得不最终使用的方法,也是根据Google解决这个问题的方式,将会弹出设置 - >移动网络活动因此,他可以明确地启用它,不仅出于要求的原因,而且还出于法律上的期限问题,因为如果您的应用程序消耗3G数据,使得用户在他不知情的情况下花钱,您可能会遇到法律问题...

关心!

+0

@ Martin-thanks mate.Good知道我现在可以专注于其他事情 – user2429689

+0

如果您认为答案完全填补了您正在寻找的替代方案,不要忘了标记它是正确的,所以在将来人们需要时间来回答你的问题...关心! –