調試筆記 --- Sending non-protected broadcast ...

軟件版本:android8.1

硬件平臺:展訊

使用自定義的廣播,然後用命令行測試的時候出現如下warning:

 1300 D AndroidRuntime: Calling main entry com.android.commands.am.Am
01-01 08:00:36.945   610  1072 E ActivityManager: Sending non-protected broadcast android.intent.action.SHOW_NAVIGATION_BAR from system uid 0 pkg null
01-01 08:00:36.945   610  1072 E ActivityManager: java.lang.Throwable
01-01 08:00:36.945   610  1072 E ActivityManager:     at com.android.server.am.ActivityManagerService.checkBroadcastFromSystem(ActivityManagerService.java:18137)
01-01 08:00:36.945   610  1072 E ActivityManager:     at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:18704)
01-01 08:00:36.945   610  1072 E ActivityManager:     at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:18795)
01-01 08:00:36.945   610  1072 E ActivityManager:     at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:499)
01-01 08:00:36.945   610  1072 E ActivityManager:     at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2909)
01-01 08:00:36.945   610  1072 E ActivityManager:     at android.os.Binder.execTransact(Binder.java:565)
01-01 08:00:36.957  1300  1300 D AndroidRuntime: Shutting down VM
01-01 08:00:37.284  1167  1227 D RKUpdateService: WorkHandler::handleMessage() : To perform 'COMMAND_CHECK_LOCAL_UPDATING'.
01-01 08:00:37.284  1167  1227 D RKUpdateService: getValidFirmwareImageFile() : Target image file path : /data/media/0/update.zip
01-01 08:00:37.284  1167  1227 D RKUpdateService: getValidFirmwareImageFile() : Target image file path : /storage/emulated/0/update.zip

原因:

系統對自定義廣播做了保護限制,對廣播做了保護限定之後,只有一定權限的用戶纔可以使用。否則用一次就會打印一次warning,並且保存異常信息到文件中。
解決方法:

framework/base目錄:
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 45086c0..d8f3a9a 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -495,6 +495,10 @@
     <!--for cec-->
     <protected-broadcast android:name="com.rockchip.hdmicec.power_status_changed" />
 
+    <protected-broadcast android:name="android.intent.action.HIDE_NAVIGATION_BAR" />
+    <protected-broadcast android:name="android.intent.action.SHOW_NAVIGATION_BAR" />
+
+

     <!-- ====================================================================== -->
     <!--                          RUNTIME PERMISSIONS                           -->
     <!-- ====================================================================== -->

 

解決~~~

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章