ADBの使い方について質問です。
私はこのコマンドを知っています:
adb shell dumpsys activity
デバイスで現在実行されているすべてのアクティビティを表示できます。
しかし、インテントが次のように表示される場合があることに気付きました。
Intent { ...some_intent/activity_name.... (has extras) }
エクストラは、何らかのパラメーターが渡されてアクティビティが開始されたことを意味します (ここで間違っている可能性があります。間違っている場合は修正してください)。
私の質問は、ADB を介してインテント/アクティビティのエクストラを取得するにはどうすればよいですか?
これが必要な理由は、次のような ADB コマンドを使用して (電話にインストールされている) apk を起動しようとしているからです。
adb shell "su -c 'am start -n com.package.name/.ActivityName'"
それは機能し、アプリケーションを起動します。アプリケーションには開始画面 (HomeActivity と呼びます) があり、ボタンをクリックしていくつかの選択 (SelectionActivity など) を行う必要があり、別の画面 (ActionActivity など) に移動します。apk を起動して ActionActivity に直行できるようにしたいです。
am start コマンドで ActionActivity を起動しようとすると、アプリケーションがクラッシュします。これは、SelectionActivity 画面からのパラメーターが必要なためだと思います。
これが、ActionActivity画面が実際に取得する「エクストラ」またはパラメーターが何であるかを確認しようとしている理由です。これにより、次のようなことができます。
adb shell "su -c 'am start -n com.package.name/.ActionActivity -e param1 val1 -e param2 val2'"
私の質問が明確であることを願っています。
どこかで間違っている場合は修正してください。
前もって感謝します!