您的位置:首页 > 移动开发 > Android开发

android如何通过拨号界面打开隐藏界面

2016-08-19 18:20 267 查看
一. SpecialCharSequenceMgr.java 的 handleSecretCode 方法会处理以*#*#开头,以#*#*结尾的字符串,源码如下

static boolean handleSecretCode(Context context, String input) {
// Secret codes are in the form *#*#<code>#*#*

/// M: for plug-in @{
input = ExtensionManager.getInstance().getDialPadExtension().handleSecretCode(input);
/// @}

int len = input.length();
if (len > 8 && input.startsWith("*#*#") && input.endsWith("#*#*")) {
final Intent intent = new Intent(SECRET_CODE_ACTION,
Uri.parse("android_secret_code://" + input.substring(4, len - 4)));
context.sendBroadcast(intent);
return true;
}
if(input.equals("*#6813#"))
{
Intent intent = new Intent(SECRET_CODE_ACTION,
Uri.parse("android_secret_code://" + input.substring(2, len - 1)));
context.sendBroadcast(intent);
return true;
}

return false;
}


     二. 在我们自己的代码中监听对应的广播消息,代码如:

<receiver android:name="lyps.SecretReceiver" >
<intent-filter>
<action android:nam
4000
e="android.provider.Telephony.SECRET_CODE" />

<data
android:host="33221985"
android:scheme="android_secret_code" />
</intent-filter>
</receiver>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: