相关疑难解决方法(0)

Android打开pdf文件

我正在开发一个Android应用程序,我必须打开一些文件.

这是我使用intent的代码:

public class FacturaActivity extends Activity {

    (...)

    public void downloadInvoice(View view) {
        File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() +"/"+ filename);
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setDataAndType(Uri.fromFile(file),"application/pdf");
        intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
        startActivity(intent);
    }
}
Run Code Online (Sandbox Code Playgroud)

文件位于SD卡的根目录中,我可以手动打开它.

问题

应用程序在到达startActivity(intent)时关闭.我认为问题出在AndroidManifest.xml文件中,但我不知道如何正确使用它.

AndroidManifest.xml中

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="8" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme"
    android:name="###.MyApplication" > <!--cant show complete name-->
    <activity
        android:name="###.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity 
        android:name=".FacturaActivity" >
    </activity>

</application>
Run Code Online (Sandbox Code Playgroud)

logcat的

07-03 15:49:13.094: E/AndroidRuntime(1032): FATAL EXCEPTION: …
Run Code Online (Sandbox Code Playgroud)

pdf android file android-manifest

30
推荐指数
3
解决办法
10万
查看次数

标签 统计

android ×1

android-manifest ×1

file ×1

pdf ×1