0

インストールされているAdobeReaderを使用してPDFファイルを開きたい。「使用してアクションを完了する」メニューを防ぐために、次の方法で試しました。

Intent intent = new Intent();
intent.setPackage("com.adobe.reader");
intent.setDataAndType(Uri.fromFile(doc), "application/pdf");
startActivity(intent);

上記のコードを使用して、リストサイズを2に減らすことができました。コンテキストメニューの表示を回避する方法はありますか(を使用してアクションを完了します)。

ありがとうございました!

4

2 に答える 2

1

2つのアクティビティに同じインテントフィルターアクションがある場合、Androidシステムは自動的に[使用中のアクションの完了]ダイアログボックスを表示します。デフォルトのアクションを選択したら。Androidはそれを表示せず、デフォルトのアクションを使用してタスクを完了します。

于 2012-07-18T07:38:36.763 に答える
-2

この質問に答えてくれたすべての人に感謝します。いくつかブラウジングした後、私は私の質問の解決策を見つけました。これは私にとって完璧に機能しています。

使用する代わりに

intent.setPackage("com.adobe.reader");

使用しました

intent.setClassName("com.adobe.reader", "com.adobe.reader.AdobeReader");

try catchブロックでアクティビティを開始することを忘れないでください。これは、AdobeReaderがデバイスにインストールされていない場合に役立ちます。以下のスニペットを確認してください。

try {
    Intent intent = new Intent();

    intent.setClassName("com.adobe.reader", "com.adobe.reader.AdobeReader");
    intent.setAction(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.fromFile(doc), "application/pdf");
    startActivity(intent);

   } 
   catch (ActivityNotFoundException activityNotFoundException) {
    activityNotFoundException.printStackTrace();
    }
于 2012-07-19T13:04:01.337 に答える