0

私はAndroidアプリケーションの開発が初めてです。SD カードに保存されている pdf ファイルを開こうとしています。どんな助けでも感謝します。

    Intent intent = new  Intent(Intent.ACTION_VIEW,Uri.parse("Environment.getExternalStorageDirectory().getPath()+/sample.pdf"));
    intent.setType("application/pdf");
    intent.setPackage("com.adobe.reader"); selects the adobe reader directly 
    PackageManager pm = getPackageManager();
    List<ResolveInfo> activities = pm.queryIntentActivities(intent,0);
    if (activities.size() >= 0) 
            {
    startActivity(intent);


    } else {
    Toast.makeText(this, "No Application Available to View PDF",

        Toast.LENGTH_SHORT).show();
    }
4

2 に答える 2

1

パスを指定してsdcardからpdfファイルを読み取り、次のことを試すことができます。

File pdfFile = new File(path); 
if(pdfFile.exists()) 
{

    Uri path = Uri.fromFile(pdfFile); 
    Intent pdfIntent = new Intent(Intent.ACTION_VIEW);
    pdfIntent.setDataAndType(path, "application/pdf");
    pdfIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    try
    {
        startActivity(pdfIntent);
    }
    catch(ActivityNotFoundException e)
    {
        Toast.makeText(uractivity.this, resource.getString(R.string.noapplicationpdf), Toast.LENGTH_LONG).show(); 
    }
}
于 2012-05-25T02:48:27.207 に答える
0

次のようなものを試すことができます

Intent intent = new Intent(Intent.ACTION_VIEW);
File file = new File(filename);
intent.setDataAndType( Uri.fromFile( file ), "application/pdf" );
startActivity(intent);

また

Intent intent = new Intent();
intent.setPackage("com.adobe.reader");
intent.setDataAndType(Uri.fromFile(file), "application/pdf");
startActivity(intent);
于 2012-05-25T02:25:43.573 に答える