java - Adb am 命令有效,但 java 代码中的 Intent 不起作用

标签 java android android-intent adb

抱歉我的英语不好,需要一点帮助

我正在构建一个应用程序,该应用程序需要将 ovpn 文件导入到 openvpn connect 应用程序中。

我从 adb 运行此命令并且工作正常

    adb shell am start -n net.openvpn.openvpn/.OpenVPNAttachmentReceiver -a         android.intent.action.VIEW -d "/MyPcHardDis/profile.ovpn" -t "application/x-openvpn-profile"

但是如果我打算启动相同的命令

    Intent intent = new Intent();
    intent.setAction("android.intent.action.VIEW");
    intent.setComponent(new   ComponentName("net.openvpn.openvpn","net.openvpn.openvpn.OpenVPNAttachmentReceiver"));
    intent.setData(Uri.parse("/storage/emulated/0/Download/asdf.ovpn"));
    intent.setType("application/x-openvpn-profile");
    startActivity(intent);

启动后,openvpn 应用程序会打开,但不会导入配置文件。

Intent 是错误的?

最佳答案

        Intent intent = new Intent();
        intent.setAction("android.intent.action.VIEW");
        intent.setComponent(new ComponentName("net.openvpn.openvpn","net.openvpn.openvpn.OpenVPNAttachmentReceiver"));
        intent.setDataAndType(Uri.parse(file_path), "application/x-openvpn-profile");
        startActivity(intent);

关于java - Adb am 命令有效,但 java 代码中的 Intent 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24152654/

相关文章:

android - HTTP请求json-android中出现未知主机异常

android - ListView ,有两个 TextView 和一个 ImageView

android - 通过单击 ListView 项目发送字符串

java - Intent.getExtras 不起作用

使用 DiskLRUCache 的 Android 照片/缩略图策略

Android Camera takePicture 正在使用预览小缓冲区

java - 如何在 Outlook 中创建电子邮件并使其对用户可见

Java - Gson 不能使用动态定义的对象

Java:使用 BoxLayout 在 JPanel 中垂直移动 JButton

java - 有没有一种简单的方法来删除 Spring 项目未使用的依赖项