1
我要給客戶(主要是孩子)提供手機(Android),並且想要創建'鎖定'應用程序。 我不希望客戶打擾手機的PIN碼,但是當您打開設備時,'鎖定'應用程序應該開始。然後我覆蓋按鈕,他們不應該能夠打電話。是否可以解鎖SIM卡,並讓軟件輸入密碼
唯一的一點是,如果是移除了SIM卡,或者在被盜的情況下,我想在SIM卡上輸入密碼。那麼是否有可能我的'鎖'應用程序通過將密碼放入密碼來解鎖SIM卡?
我該怎麼做?
我要給客戶(主要是孩子)提供手機(Android),並且想要創建'鎖定'應用程序。 我不希望客戶打擾手機的PIN碼,但是當您打開設備時,'鎖定'應用程序應該開始。然後我覆蓋按鈕,他們不應該能夠打電話。是否可以解鎖SIM卡,並讓軟件輸入密碼
唯一的一點是,如果是移除了SIM卡,或者在被盜的情況下,我想在SIM卡上輸入密碼。那麼是否有可能我的'鎖'應用程序通過將密碼放入密碼來解鎖SIM卡?
我該怎麼做?
這是可能的。我做這個代碼:
try {
@SuppressWarnings("rawtypes")
Class clazz = Class.forName(telephonyManager.getClass().getName());
Method m = clazz.getDeclaredMethod("getITelephony");
m.setAccessible(true);
ITelephony it = (ITelephony) m.invoke(telephonyManager);
if (it.supplyPin("1234")) {
// SIM unlocked
} else {
// not unlocked
}
} catch (Exception e) {
//
}
爲了做到這一點,你需要的ITelephony接口。你可以找到它的來源here。在您的src文件夾中製作com.android.internal.telephony包,並將iTelephony.java放在那裏。此方法使用* android.permission.MODIFY_PHONE_STATE *權限,該權限僅適用於Android 2.2。從版本2.3開始,此權限僅限於系統應用程序。如果您想在最新版本中使用該代碼,則必須將應用程序apk文件從/ data/app移動到/ system/app文件夾。