我想在广播我的自定义意图,当我点击我的HTML页面从浏览器的链接。我知道Android系统会为此播放“android.intent.action.VIEW”,我可以在我的应用程序中收到这个,但这样做会列出我的应用程序的每个可点击的链接,所以我想广播我的自定义意图操作。我可以通过浏览器的HTML页面链接广播自定义意图吗?
回答
我已经按照
创建的test.html文件,这个单行
<a href="intent://example.com/test?id=12345#Intent;scheme=myapp;package=com.mypackage;end">Open Your Application Directly</a>
这里解决了这个"example.com/test?id=12345"
可以是你想要的,这将在我们在我们的onCreate()
传递的意图数据的任何事情方法,所以我给了例如身份证。
"scheme"
可我们需要写相同的方案在我们menifest.xml的意图过滤
"package"
任何字符串为您的应用程序包的名称从其他应用程序具有相同的方案
注意区别开来:如果应用程序没有安装设备,然后它会打开谷歌Play商店中从给出有效的软件包名称
在AndroidMenifest.xml文件
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<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="myapp" />
</intent-filter>
您可以为我为启动程序活动提供的任何活动添加意图过滤器 请注意<data android:scheme="myapp" />
方案名称必须与之前的HTML文件中给出的相同。
完成!打开您的设备的任何浏览器中的HTML文件&点击链接,它会直接打开您的应用程序。
您可以在活动的onCreate()
方法获取数据的意图像
Intent intent = getIntent();
if (intent != null && intent.getData() != null) {
Uri data = intent.getData();
String path = data.getPath();
String id = data.getQueryParameter("id");
Log.d("ID", ": " + id);
}
我要广播我的自定义的意图时,我从浏览器中单击我的HTML页面 的链接。
您可以通过两种方式来完成,具体选择取决于您的使用案例。
- 创建
<intent-filter>
打开选定的链接(网站链接) - 改变你的网站上链接到
<a href="intent://...>
第一种方法让你灵活地离开您的网站的链接,这是,它也将有助于在deeplinking和AppIndex。第二种方法将使您更改网站中的所有链接。
我知道Android系统将播出“android.intent.action.VIEW”为 这一点,我可以在我的申请得到这一点,但这样做会列出我的每一个可点击的链接 应用程序,所以我想我的广播 自定义意图操作。
它不会列出您网站上每个可点击链接的应用程序,它只会为您的网站链接打开您的应用程序。如果你不想这样做,只打开你的网站的特定链接的应用程序,你应该使用上面的方法2。
第二mehtod只是注意
确保实现后备网址,通过Google
的建议当意图无法得到解决,或外部应用程序可以 不那么用户将被重定向到回退URL (如果有)。
链接应该是这样的
<a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;S.browser_fallback_url=http%3A%2F%2Fzxing.org;end">
通知的S.browser_fallback_url
为后备
- 1. 我可以让内网用户通过浏览器截图当前页面吗?
- 2. 我们可以通过广播接收器绑定绑定服务吗?
- 3. 我可以通过标准科幻页面的自定义链接按钮弹出一个vf页面吗
- 4. 我可以从感兴趣的广播接收器(本地应用程序)可以接收的电话中的网络浏览器发送意向广播吗?
- 5. 通过广播接收器检测浏览器启动
- 6. Android自定义意图过滤器没有收到广播?
- 7. 我可以在HTML页面中播放iTunes歌曲预览吗?
- 8. 可以浏览多个页面的属性的自定义属性(JQuery&HTML)
- 9. 我可以在没有浏览器的情况下显示html页面吗?
- 10. 通过意向从浏览器共享的网页获取HTML
- 11. 浏览器可以通过SSL/TLS连接到代理吗?
- 12. 如何通过PHPMailer链接自定义的“已发送”页面
- 13. 我可以将HTML绑定到WPF Web浏览器控件吗?
- 14. 可以通过UDP对等连接广播网络消息吗?
- 15. 通过单击网页链接启动浏览器的活动
- 16. 可以通过浏览器访问ftp文件夹时创建自定义视图吗?
- 17. Silverlight可以通过浏览器实例检测或通信吗?
- 18. HTML和JS我可以通过浏览器</p> <p>固定
- 19. Magento页面的自定义Canonical链接
- 20. 意图和广播接收器故障
- 21. SiteCatalyst:跟踪Webkit浏览器上的自定义链接
- 22. 在自定义大小的浏览器中调用链接
- 23. 我可以创建超链接来浏览Visual Studio文件吗?
- 24. 可以链接图像映射以打开浏览文件控制器吗?
- 25. html5的websocket可以通过浏览器监听端口吗?
- 26. 可以通过[.data.table()中的浏览器查看.SD吗?
- 27. 我们可以自定义CakePHP测试页面吗?
- 28. 在iPhone中,我可以创建链接到iTunes Store上的播客页面吗?
- 29. 如何在CKEditor中设置自定义链接浏览器?
- 30. CKEditor自定义图像浏览器