我正在尝试从Android应用程序中读取Pdf文件。
它构建一个应用程序并且没有错误,但是当我单击按钮时它没有做任何事情。看起来应用程序认为没有文件。
我需要帮助,因为我对Android应用程序很新,但需要在今天或明天完成这项工作。这样做的人现在离开了。
package com.readPDF;
import java.io.File;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class ReadPDF extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button) findViewById(R.id.pdfbutton);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getContext(), "in.", Toast.LENGTH_LONG).show();
File file = new File("http://path/pathtopdf/mypdf.pdf");
if (file.exists()) {
Uri path = Uri.fromFile(file);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(path, "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
try {
startActivity(intent);
}
catch (ActivityNotFoundException e) {
Toast.makeText(ReadPDF.this,
"No Application Available to View PDF",
Toast.LENGTH_SHORT).show();
}
}
}
private Context getContext() {
// TODO Auto-generated method stub
return null;
}
});
}
}
答案 0 :(得分:0)
您的pdf路径不正确。更改其他有效路径,然后再试一次。然后首先尝试是否设置了Internet权限。
答案 1 :(得分:0)
您无法使用新文件(“http url”)直接获取远程服务器中的文件。
URI uri = new URI("http", "//path/pathtopdf/mypdf.pdf", null);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(path, "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
try {
startActivity(intent);
} catch (ActivityNotFoundException e) {
Toast.makeText(ReadPDF.this,
"No Application Available to View PDF",
Toast.LENGTH_SHORT).show();
}