gpt4 book ai didi

android - 打开位于应用程序内的 pdf 文件(原始文件夹)

转载 作者:行者123 更新时间:2023-11-30 04:36:20 24 4
gpt4 key购买 nike

我需要在外部应用程序(如 Adob​​e Reader)中打开位于应用程序(原始文件夹)内的一些 pdf 文件

我尝试使用这段代码,如果文件在 SD 卡中,它可以完美运行,但是,如果我尝试将应用程序(包)目录放在文件行中,什么也没有发生:

public void onClick(View v) {
File file = new File("/sdcard/myfile2.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(referencias.this,
"No Application Available to View PDF",
Toast.LENGTH_SHORT).show();
}
}
}

我也试试这个代码。应用程序 Adob​​e 阅读器打开但我收到无效的访问目录错误:

public void onClick(View v) {
Intent i = new Intent();
i.setAction(Intent.ACTION_VIEW);

i.setDataAndType(Uri.parse("file:///data/app/mypackage/res/raw/myfile.pdf"),
"application/pdf");

try{
startActivity(i);
}
catch (ActivityNotFoundException e) {
Toast.makeText(referencias.this,
"No Application Available to View PDF",
Toast.LENGTH_SHORT).show();
}

最后的解决方案是每次都将pdf文件从raw文件夹复制到SD卡,如this tutorial .

但是真的很复杂,代码很多。

最佳答案

如果您使用应用程序编写 pdf,应用程序文件权限可能不允许外部可见性。查看:http://developer.android.com/guide/topics/data/data-storage.html#filesInternal

关于android - 打开位于应用程序内的 pdf 文件(原始文件夹),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6780719/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com