【问题标题】:How to get file name and path using implicit intent?如何使用隐式意图获取文件名和路径?
【发布时间】:2016-03-21 16:38:48
【问题描述】:

我需要获取隐式intent提供的文件名和路径,我试过getIntent().getdata().getpath();方法,但它不起作用,我是android新手,所以请帮助我。 这是我的清单代码 <intent-filter><action android:name="android.intent.action.SEND"/><category android:name="android.intent.category.DEFAULT"/><data android:mimeType="audio/*"/> </intent-filter> 和代码:

FILE file=new FILE(getIntent().getData().getpath());

【问题讨论】:

  • 由于该代码甚至无法编译,我们无法为您提供帮助,您当然也没有使用它。我们也不知道您使用的是什么“隐含意图”。通常,您不会在 Android 中使用 Intent 对象获得“文件名和路径”。你会得到一个 Uri 值 (getIntent().getData()),而 Uri 不必指向文件。

标签: android android-intent filter


【解决方案1】:

您应该像这样处理接收音频数据(在测试预期的操作和 MIME 类型之后):

Uri audoUri = (Uri) intent.getParcelableExtra(Intent.EXTRA_STREAM);
if (audioUri != null) {
    // Use the Uri to read the audio file
}

请注意,这会为您提供Uri,而不是File 对象。如果发送活动从File 创建Uri,则Uri 将具有"file://" 的形式。

【讨论】:

    猜你喜欢
    • 2011-11-30
    • 2020-11-02
    • 2013-06-03
    • 1970-01-01
    • 1970-01-01
    • 2015-02-12
    • 2015-03-19
    • 1970-01-01
    • 2011-11-16
    相关资源
    最近更新 更多