gpt4 book ai didi

Android - 在我的应用程序中获取选定的 pdf、doc、ppt 或 xls 的文件路径

转载 作者:行者123 更新时间:2023-11-29 00:19:00 25 4
gpt4 key购买 nike

我正在开发一个 android 应用程序。

我的目标:

如果用户打开 SDCard(或)保管箱(或)电子邮件等任何文件夹中的 pdf、doc、ppt 或 xls 文件,他们必须导航到我的应用程序(在我的应用程序中,我会做一些根据他们选择的文件进行处理)。

我做了什么:

如果用户单击 PDF 文件,我可以获得文件路径,然后他们将导航到我的应用程序。为此,我完成了以下代码。

Code snippet:

在 AndroidManifest.xml 中,我添加了以下代码:

        <activity android:name="com.openwith.OpenwithActivity" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />

<data android:scheme="file" />
<data android:mimeType="*/*" />
<data android:scheme="http" android:host="*" android:pathPattern=".*\\.pdf" />
<data android:scheme="https" android:host="*" android:pathPattern=".*\\.pdf" />
<data android:scheme="content" android:host="*" android:pathPattern=".*\\.pdf" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.pdf" />
</intent-filter>
</activity>

在OpenwithActivity.java中

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.webkit.WebView;

public class OpenwithActivity extends Activity {

@SuppressLint("SetJavaScriptEnabled")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_openwith);

Intent intent = getIntent();
Uri data = intent.getData();
if (data != null) {
String filePath = data.getPath();
}
}

}

我需要什么:

我只得到 pdf 文件的路径。如果我想获取doc、ppt和xls文件的路径,我需要在AndroidManifest.xml中添加什么?

我在网上搜索过。但是我没有得到任何明确的文档(或)教程。谁能帮我做这件事?

最佳答案

为其他文件类型添加与 pdf 相同的 intent-filter 条目。

<data android:scheme="http" android:host="*" android:pathPattern=".*\\.ppt" />
<data android:scheme="https" android:host="*" android:pathPattern=".*\\.ppt" />
<data android:scheme="content" android:host="*" android:pathPattern=".*\\.ppt" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.ppt" />
<data android:scheme="http" android:host="*" android:pathPattern=".*\\.xls" />
<data android:scheme="https" android:host="*" android:pathPattern=".*\\.xls" />
<data android:scheme="content" android:host="*" android:pathPattern=".*\\.xls" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.xls" />
<data android:scheme="http" android:host="*" android:pathPattern=".*\\.doc" />
<data android:scheme="https" android:host="*" android:pathPattern=".*\\.doc" />
<data android:scheme="content" android:host="*" android:pathPattern=".*\\.doc" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.doc" />

对于图像,应该这样做:

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />

<data android:mimeType="image/*" android:scheme="http" android:host="*" />
<data android:mimeType="image/*" android:scheme="https" android:host="*" />
<data android:mimeType="image/*" android:scheme="content" android:host="*" />
<data android:mimeType="image/*" android:scheme="file" android:host="*" />
</intent-filter>

关于Android - 在我的应用程序中获取选定的 pdf、doc、ppt 或 xls 的文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24304464/

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