Android Secret Code(輸入字符彈出手機信息)詳解
Android Secret Code
我們很多人應該都做過這樣的操作,打開撥號鍵盤輸入*#*#4636#*#*等字符就會彈出一個界面顯示手機相關的一些信息,這個功能在Android中被稱為android secret code,除了這些系統(tǒng)預置的secret code,我們也可以實現自己的secret code,而且實現起來非常簡單。
要實現自己的secret code,只需要向系統(tǒng)注冊一個Broadcast Receiver,不需要任何權限,如下所示:
<receiver android:name=".SecretReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SECRET_CODE"/>
<data android:scheme="android_secret_code" android:host="0123"/>
</intent-filter>
</receiver>
只需要注冊action為android.provider.Telephony.SECRET_CODE,并且scheme為android_secret_code的Broadcast Receiver,這樣當用戶在撥號鍵盤輸入*#*#0123#*#*時就會調用我們注冊的Receiver了,在Receiver中把接收到的Intent信息打出來會是這樣:
Intent { act=android.provider.Telephony.SECRET_CODE dat=android_secret_code://0123
flg=0x10 cmp=me.angeldevil.secretcode/.SecretReceiver }
這個邏輯的處理在撥號應用里,如果使用第三方撥號應用而這個應用又沒有處理的話,也許會失效。
那么這個功能有什么做用呢?這個就看應用需要了,由于這個Broadcast Receiver運行在你自己的應用進程內,所以可以讀取你應用內的一切數據。比如說你可以在接收到Broadcast后dump應用狀態(tài),可以打開一個Activity做一些特殊設置,可以啟用/禁用一些功能(比如Flyme就可以在輸入*#*#6961#*#*后在設置中顯示一些輔助功能,可以開啟Root等)。
但是,不同的Receiver可以注冊相同的android:host,可能會跟其他應用的設置沖突,不過一般情況下應用應該不會使用這個功能,非系統(tǒng)級應用的控制還是放到應用內比較好。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
實例講解Android中的AutoCompleteTextView自動補全組件
AutoCompleteTextView組件被用在輸入框中能實現輸入內容自動補全的功能,類似于大家平時用Google時的輸入聯想,這里我們來用實例講解Android中的AutoCompleteTextView自動補全組件,特別是實現郵箱地址補全的例子,非常實用2016-05-05
Android AutoWrapTextView中英文排版問題的解決方法
這篇文章主要給大家介紹了關于Android AutoWrapTextView中英文排版問題的解決方法,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。2017-05-05
Android設備adb連接后顯示device unauthorized解決方案
這篇文章主要為大家介紹了Android設備adb連接后顯示device unauthorized解決方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06
android 仿微信demo——微信通訊錄界面功能實現(移動端,服務端)
本系列文章主要介紹了微信小程序-閱讀小程序實例(demo),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望能給你們提供幫助2021-06-06
Android調用OpenCV2.4.10實現二維碼區(qū)域定位
這篇文章主要為大家詳細介紹了Android調用OpenCV 2.4.10實現二維碼區(qū)域定位,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-03-03

