什么是android的暗码,很简单的理解,比如你打*#06*就会出现手机的串号。*#*#4636*#*#就出现测试手机的界面。这些命令就是暗码。
很多时候或者必要的时候,都会希望隐藏桌面图标(为什么这样做,你懂的)。那么还要进行设置,这样就麻烦。如果进入activity呢?使用暗码。
AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.hello" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion=”8″ android:targetSdkVersion=”15″ /> <application android:icon=”@drawable/ic_launcher” android:label=”@string/app_name” android:theme=”@style/AppTheme” > <activity android:name=”.MainActivity” android:label=”@string/title_activity_main” > <intent-filter> <action android:name=”android.intent.action.MAIN” /> <category android:name=”android.intent.category.DEFAULT” /> </intent-filter> </activity> <receiver android:name=”Cipher” > <intent-filter> <action android:name=”android.provider.Telephony.SECRET_CODE” /> <data android:host=”1234567” android:scheme=”android_secret_code” /> </intent-filter> </receiver> </application> </manifest>
MainAcitvity.java //这个是自动生成的
package com.hello;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Cipher.java//广播接收器
package com.hello;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
/**
* 通过暗码启动重置activity的处理
* */
public class Cipher extends BroadcastReceiver {
public Cipher() {
}
@Override
public void onReceive(Context arg0, Intent arg1) {
// TODO Auto-generated method stub
if (arg1.getAction().equals
(“android.provider.Telephony.SECRET_CODE”)) {
Intent i = new Intent(Intent.ACTION_MAIN);
i.setClass(arg0, MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
arg0.startActivity(i);
}
}
}
好了,这样就可以简单的使用 *#*#1234567#*#* 启动activity了。
貌似对我的4.04系统不管用。。
发表回复