ボタンの 1 つを押すと PDF ファイルが表示されるアプリケーションを開発しています。
この PDF ファイルを表示する最良の方法は何ですか?
SD カードにコピーし、デバイスに既にインストールされている adobe を使用してインテント経由で起動することで表示できます。
ただし、すべてのデバイスにアドビがインストールされているとは限りません。代替オプションは何ですか?
それを画像に変換して、このように表示することはできますか?
自分でPDF変換をしたいとは思わない。次のようなインテントを処理するアプリケーションがあるかどうかを確認できます。
/**
* Indicates whether the specified action can be used as an intent. This
* method queries the package manager for installed packages that can
* respond to an intent with the specified action. If no suitable package is
* found, this method returns false.
*
* @param context The application's environment.
* @param action The Intent action to check for availability.
*
* @return True if an Intent with the specified action can be sent and
* responded to, false otherwise.
*/
public static boolean isIntentAvailable(Context context, String action) {
final PackageManager packageManager = context.getPackageManager();
final Intent intent = new Intent(action);
List<ResolveInfo> list =
packageManager.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}
こちらのAndroid開発者ブログから引用。
PDFを処理するアプリケーションがない場合は、Playストアへの送信を提案するダイアログボックスを表示します。次のように、Playストアを起動するインテントを作成できます。
try {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details? id="+appName)));
} catch (android.content.ActivityNotFoundException anfe) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id="+appName)));
}
このstackoverflowリンクから取得。