如何获得root电话的NFCEE_ADMIN权限?

时间:2012-03-03 11:25:59

标签: android nfc rfid rooted-device

NFCEE_ADMIN权限是签名级别。 但是,是否有可能“欺骗”获得root权限手机上的此权限?也许使用类似于the way ClockSync does it的技术?

我正在尝试使用反射技术来访问NFCExtras:

mAdapter = NfcAdapter.getDefaultAdapter(this);

try {
    Class mynfcextras = Class.forName("android.nfc.INfcAdapterExtras");
    Method getnfcExtras = mAdapter.getClass().getMethod("getNfcAdapterExtrasInterface");
    Object nfcExtras = getnfcExtras.invoke(mAdapter);
} catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

但当然会出现以下错误:“需要NFCEE_ADMIN权限:用户xxx和当前进程都没有com.android.nfc.permission.NFCEE_ADMIN。”

编辑:当然,我确实在包中添加了权限,但在安装过程中删除了它:

W/PackageManager(  XXX): Not granting permission com.android.nfc.permission.NFCEE_ADMIN to package XXX (protectionLevel=2 flags=0x8be46)

1 个答案:

答案 0 :(得分:1)

您的应用的签名需要在/system/etc/nfcee_access.xml。参见例如http://code.google.com/p/seek-for-android/wiki/BuildingTheSystem以获取如何创建它的示例。