代码之家  ›  专栏  ›  技术社区  ›  Omid Mafakher

Android自动启动时的意图过滤器

  •  0
  • Omid Mafakher  · 技术社区  · 6 年前

    1 回复  |  直到 6 年前
        1
  •  2
  •   salminnella    6 年前

    ACTION_ENTER_CAR_MODE 当Android自动启动并连接时,在广播接收器中收听。请记住,ACTION\u ENTER\u CAR\u模式并非Android Auto独有,它只是意味着操作系统处于CAR模式,这可能涉及Android Auto,也可能不涉及Android Auto。

    <receiver 
        android:name=".CarModeReceiver" 
        android:enabled="true" 
        android:exported="true"> 
           <intent-filter> 
               <action android:name="android.app.action.ENTER_CAR_MODE"/> 
               <action android:name="android.app.action.EXIT_CAR_MODE"/> 
           </intent-filter> 
    </receiver>
    

    public class CarModeReceiver extends BroadcastReceiver { 
        @Override public void onReceive(Context context, Intent intent) { 
            String action = intent.getAction(); 
            if (UiModeManager.ACTION_ENTER_CAR_MODE.equals(action)) { 
                Log.d("CarModeReceiver", "Entered Car Mode"); 
            } else if (UiModeManager.ACTION_EXIT_CAR_MODE.equals(action)) { 
                Log.d("CarModeReceiver", "Exited Car Mode"); 
            } 
        } 
    }
    

    还值得注意的是,从上面链接的文档中。。。

    此外,用户可以手动将系统切换到汽车模式,而无需实际停留在码头上。在汽车模式下——无论是通过用户的手动操作还是实际放置在停靠站中——会显示一条通知,允许用户退出停靠站模式。因此,此处表示的停靠模式可能不同于底层停靠事件广播的当前状态。