私は自分のデバイスにアプリをインストールしており、そのアプリとやり取りしてそのアクティビティの一部を起動したいと考えています。自分が使用できるように公開されているインテントを見つけるにはどうすればよいですか? アプリのソースコードを持っていないことに注意してください。
ありがとうございました。
私は自分のデバイスにアプリをインストールしており、そのアプリとやり取りしてそのアクティビティの一部を起動したいと考えています。自分が使用できるように公開されているインテントを見つけるにはどうすればよいですか? アプリのソースコードを持っていないことに注意してください。
ありがとうございました。
アプリが持つインテントを見つける必要はありません。ACTION_VIEW、ACTION_GET_CONTENT、ACTION_DIAL (ほんの数例を挙げると) などの「システム全体」のインテントを作成すると、システムはそれらのインテントを処理できるアプリを見つけます。
ここで詳細を確認できます: http://developer.android.com/guide/components/intents-filters.html
「スヌープ」したいだけの場合は、 を使用PackageManager.getPackageInfo()
して、インストールされているアプリケーションに関するあらゆる種類の情報を取得できます。基本的に、そのパッケージのマニフェストに存在するすべてのものを取得できます。これにより、存在するアクティビティ、存在するサービス、存在する BroadcastReceivers などがわかります。
ルート化された電話をお持ちの場合は、アプリのマニフェストを次のように確認できます。
ルート化された電話にアプリをインストールします。
apk を /data/app から PC にコピーします (「adb pull /data/app/com.whatever.app.apk」)。
Android マニフェストの表示方法への回答を使用して、APK からマニフェストを抽出します。