【问题标题】:How do I get a direct path to the assets folder如何获得资产文件夹的直接路径
【发布时间】:2015-02-24 13:11:13
【问题描述】:

我想要一个资产文件夹的直接路径,以便我可以打开存储在那里的 PDF。 所以我可以将它作为这个 Intent 中的参数传递:

Intent i = new Intent(this, SecondMainActivity.class);
i.putExtra(PdfViewerActivity.EXTRA_PDFFILENAME, "path_to_assets_folder");
startActivity(i);

【问题讨论】:

  • 您发布了很多问题,但从不点赞或将任何答案标记为正确,这种行为会阻止其他人将来回答您的问题。
  • 对不起,那是因为答案对我不起作用
  • 你能解释一下为什么这些答案不起作用吗?

标签: android android-intent android-assets


【解决方案1】:

试试这个;

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://" + getFilesDir() + "/yourfile.pdf"),
                "application/pdf");
startActivity(intent);

您也可以查看:Read a pdf file from assets folder

【讨论】:

    【解决方案2】:

    来自Android Developer guide

    public final AssetManager getAssets ()
    
    Added in API level 1
    Retrieve underlying AssetManager storage for these resources. 
    

    所以,你可以使用getAssets

    AssetManager mngr = getAssets();
    

    要访问assets 文件夹中的文件,

    InputStream is = mngr.open("file name");
    

    如果您的课程不是Activity,您需要将上下文传递给它,然后调用getAssets

    public myClass(Context myContext) {
        AssetManager mngr = myContext.getAssets();
        InputStream is = mngr.open("file name");
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-19
      • 2012-11-02
      • 2023-03-15
      • 2021-01-30
      • 2020-04-18
      • 2011-06-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多