相关疑难解决方法(0)

权限仅授予系统应用程序

我有一个使用系统权限的系统应用程序,我在清单中列出了这些权限.当我尝试进行构建时,Eclipse会出现以下错误(命令行构建工作):

权限仅授予系统应用程序

我已经知道我的应用程序需要系统权限,这对我来说不是问题,因为我的应用程序将仅用于root电话.所以我想压制这个错误,有谁知道怎么做?

编辑
我的项目已经在命令行,安装,运行等编译好.我的问题是关于eclipse为合法的清单文件提供错误.

eclipse android lint

92
推荐指数
4
解决办法
9万
查看次数

通过将应用程序放入/ system/app获取Android系统权限?

尝试使用AOSP的一些较新的Android API,我发现一些需要android.permission.BLUETOOTH_PRIVILEGED权限.根据文档,许可"不适用于第三方应用程序".

我在别处读过,你可以通过在/ system/app目录中安装你的应用程序来获得root设备的系统级权限.我在我的root用户Nexus 5上尝试了这个,但是我的应用程序仍然无法获得所需的权限.(参见下面的代码和LogCat输出.)

我听说过的另一种方法是构建自己的自定义Android ROM,然后使用相同的密钥对应用程序进行签名.我可以做到这一点,但如果可能的话,我强烈希望能够使用股票图像.

那是哪个呢?是否可以在带有库存图像的root电话上获得系统级权限?如果是这样,我做错了什么?

活动:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if ((this.getApplicationInfo().flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
        Log.d(TAG, "This is a system application");
    }
    else {
        Log.d(TAG, "This is not a system application");         
    }
    if (getApplicationContext().checkCallingOrSelfPermission("android.permission.BLUETOOTH_PRIVILEGED") == PackageManager.PERMISSION_GRANTED) {
        Log.d(TAG, "I have android.permission.BLUETOOTH_PRIVILEGED");
    }
    else {
        Log.d(TAG, "I do not have android.permission.BLUETOOTH_PRIVILEGED");            
    }       
    ...     

}
Run Code Online (Sandbox Code Playgroud)

LogCat输出:

W/PackageManager(  788): Not granting permission android.permission.BLUETOOTH_PRIVILEGED to package com.radiusnetworks.testapp (protectionLevel=18 flags=0x8be47)
I/ActivityManager(  788): Start proc …
Run Code Online (Sandbox Code Playgroud)

permissions android android-permissions

7
推荐指数
1
解决办法
2万
查看次数