我想使用一种功能,用户可以通过按下项目文件来启动我的应用程序/应用程序。我关注com.gluonhq.charm.down.plugins.RuntimeArgsService
Gluon 服务。
我的第一步是从 URL 启动应用程序。但是 - 我想知道是否/如何让我的应用程序知道它是从哪个 URL 启动的 - 这样它就可以自动导入该项目并为用户显示它。
可以将启动 URL 提供给应用程序/应用程序 - 以便它可以知道它是从哪里启动的?
我想使用一种功能,用户可以通过按下项目文件来启动我的应用程序/应用程序。我关注com.gluonhq.charm.down.plugins.RuntimeArgsService
Gluon 服务。
我的第一步是从 URL 启动应用程序。但是 - 我想知道是否/如何让我的应用程序知道它是从哪个 URL 启动的 - 这样它就可以自动导入该项目并为用户显示它。
可以将启动 URL 提供给应用程序/应用程序 - 以便它可以知道它是从哪里启动的?
通过AndroidManifest.xml
对 Android 和Default-Info.plist
iOS 上的修改进行修改,并通过使用,com.gluonhq.charm.down.plugins.RuntimeArgsService
这是可能的。
Services.get(RuntimeArgsService.class).ifPresent(service -> {
service.addListener(LAUNCH_URL_KEY, con -> {
out("Received LAUNCH_URL_KEY: " + con);
});
});
(import static com.gluonhq.charm.down.plugins.RuntimeArgsService.LAUNCH_URL_KEY
必填项)
con 此处(对于 Consumer 对象)包含启动应用程序的 url。在我的情况下,一个名为.example
我自己的文件。这导致我修改了AndroidManifest.xml
也需要的文件:
我在AndroidManifest.xml
文件中添加了以下内容:
在 Gluon Charm 库中:http ://docs.gluonhq.com/charm/javadoc/4.4.0/com/gluonhq/charm/down/plugins/RuntimeArgsService.html - 它解释了如何使用该服务,但告诉你将您的计划设置为“yourScheme”(不采取文学形式)。
这是有关必需标签类型的 Android 文档。它指出有些是强制性的(为了将文件扩展名与您的应用程序相关联 - 除其他外)。我遇到了这篇文章无法打开自定义文件扩展名。请注意,他正在将方案设置为“文件”,这是必要的。
请记住,data
即使您没有将它们设置为任何特定的东西,也需要添加一些。这一切都使我可以从指定的文件扩展名类型启动我的应用程序,然后通过 object 通过侦听器接收 url con
。
在 iOS 上,我通过在Defualt-Info.plist
文件中添加两个键来实现这一点。通过添加那些我告诉系统我的应用程序可以打开“.exa”(如示例)文件。“TryingService”是 Gluon 应用程序的名称。
在 iOS 上也可以通过编辑Defualt-Info.plist
此处解释的文件接收 url 方案:如何使用 Gluon 应用程序在 iOS 上打开/发送 URL 到另一个应用程序?在对该问题的评论中。
在 Android 上,它也应该可以使用 - Gluon Charm Down 库中intents
已经使用了它: https ://bitbucket.org/gluon-oss/charm-down/src/153d43c06ff129f1ff93cc48a030c3a2cf099281/plugins/plugin-share/android /src/main/java/com/gluonhq/charm/down/plugins/android/AndroidShareService.java?at=default&fileviewer=file-view-defaultShareService