1. 程式人生 > >為什麼Android Studio通過app打電話發簡訊時程式會崩潰

為什麼Android Studio通過app打電話發簡訊時程式會崩潰

前段時間我在學習一個監聽本機來電狀態並將來電號碼資訊發至指定號碼的app,結果發現,程式碼完全沒錯,卻每次執行時都會結束程式。通過debug,我發現問題出在獲取手機來電狀態這個地方。可是明明在manifest裡面寫了Service那一行啊(android.permission.READ_PHONE_STATE),是什麼問題導致崩潰的?當時就幾天都沒解決。直到後來同學展示作品時,講到技術難點提到了這個地方,我才明白。

原來,android 6.0 Marshmallow版本之後,系統不會在軟體安裝的時候就賦予該app所有其申請的許可權,對於一些危險級別的許可權,app需要在執行時一個一個詢問使用者授予許可權。也就是說,在manifest裡那一句申請Service等於白寫,還不給報錯......這時需要我們在執行虛擬機器模擬時,在設定中手動開啟許可權,開啟之後就不會再報錯了。