Android 通过网页打开自己的APP(scheme)

分类: android2014-07-09 17:35 8565人阅读 评论(2) 收藏 举报

通过用手机的浏览器(内置,第三方都可)访问一个网页,实现点击一个链接启动自己的应用,并传递数据。

首先在Mainifest文件里面对要启动的Activity添加一个过滤器。

[java] view plaincopy
  1. <activity
  2. android:name="com.example.helloworld.MainActivity"
  3. android:label="@string/app_name" >
  4. <intent-filter>
  5. <action android:name="android.intent.action.MAIN" />
  6. <category android:name="android.intent.category.LAUNCHER" />
  7. </intent-filter>
  8. <intent-filter>
  9. <action android:name="android.intent.action.VIEW"/>
  10. <category android:name="android.intent.category.DEFAULT"/>
  11. <category android:name="android.intent.category.BROWSABLE"/>
  12. <data android:scheme="znn"/>
  13. </intent-filter>
  14. </activity>

在MainActivity接收数据:

[java] view plaincopy
  1. public class MainActivity extends Activity implements View.OnClickListener{
  2. @Override
  3. protected void onCreate(Bundle savedInstanceState) {
  4. super.onCreate(savedInstanceState);
  5. setContentView(R.layout.activity_main);
  6. Intent intent = getIntent();
  7. String scheme = intent.getScheme();
  8. Uri uri = intent.getData();
  9. System.out.println("scheme:"+scheme);
  10. if (uri != null) {
  11. String host = uri.getHost();
  12. String dataString = intent.getDataString();
  13. String id = uri.getQueryParameter("d");
  14. String path = uri.getPath();
  15. String path1 = uri.getEncodedPath();
  16. String queryString = uri.getQuery();
  17. System.out.println("host:"+host);
  18. System.out.println("dataString:"+dataString);
  19. System.out.println("id:"+id);
  20. System.out.println("path:"+path);
  21. System.out.println("path1:"+path1);
  22. System.out.println("queryString:"+queryString);
  23. }
  24. }
  25. }

写一个最简单的网页:

[html] view plaincopy
  1. <a href="znn://aa.bb:80/test?p=12&d=1">test</a>

测试地址:www.erdian.net/m.html

测试结果:

scheme:znn
host:aa.bb
dataString:znn://aa.bb:80/test?p=12&id=1
id:1
path:/test
path1:/test

queryString:p=12&d=1

http://www.erdian.net/?p=238

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android 通过网页打开自己的APP(scheme)相关推荐

  1. Android应用安全开发之浅谈网页打开APP

    一.网页打开APP简介 Android有一个特性,可以通过点击网页内的某个链接打开APP,或者在其他APP中通过点击某个链接打开另外一个APP(AppLink),一些用户量比较大的APP,已经通过发布 ...

  2. Android网页打开指定App

    首先,要给你要打开的应用中的activity设置过滤器,一般是启动的activity. <activity android:name=".JumpActivity" > ...

  3. 网页打开android app,android 网页中打开 app指定页面

    一.网页打开app简介 1. 用户自定义的URI (Custom URI scheme)  形式如下: scheme://host/path?parameters 2. "intent:&q ...

  4. Android 实现浏览器打开app

    我们经常看到当点击一个链接的时候,跳转到app,比如当我们在网页端浏览新闻的时候,要想查看更多评论等就会提示你跳转到app内打开查看,那是如何实现网页中打开app的呢? 怎么实现? 要想实现浏览器内打 ...

  5. Android通过浏览器打开App并传递参数

    Android通过浏览器打开App并传递参数; Data的Uri的规则: scheme://host:port/path or pathPrefix or pathPattern 打开App传递参数U ...

  6. android 短信打开APP功能及注意事项

    android 短信打开APP 1.FirstActivity配置intent-filter 2.H5提供重定向 3.Activity解析参数 4.APP退到后台无法跳转问题解决 项目APP使用的是D ...

  7. android打开另外的app两种方式,内置到自己本身的app,重新打开app,

    android打开另外的app两种方式,内置到自己本身的app空间,重新打开app空间, 目录 1.内置到自己本身的app空间, 2.重新打开app空间, 1.内置到自己本身的app空间, 被打开的a ...

  8. android 网页无法打开,Android浏览器无法打开网页

    你好,我是新来的android和我写了一个"简单的网络浏览器"的小应用程序. 但我的浏览器无法打开页面,它显示错误,如没有网络可用(网页不可用)甚至无线开启,并且正常的浏览器正在该 ...

  9. android引导用户打开位置权限_想升级 App?先要个权限吧!!!

    点击上方的终端研发部,右上角选择"设为星标" 每日早8点半,技术文章准时送上 公众号后台回复"学习",获取作者独家秘制精品资料 往期文章 记五月的一个Andro ...

最新文章

  1. PXE全自动安装操作系统--centos7.3学习笔记
  2. serlvert jsp mysql_JAVA基础:Java多语言编码问题解析(2)
  3. MPEG创始人、主席:MEPG商业模式已经破裂
  4. 职业生涯中的愚蠢想法
  5. kb4023057安装失败_微软重发Win10 KB4023057 补丁,推动Win10更新
  6. hls二次加密 m3u8_将视频转换为m3u8,使用AES-128的方式加密HLS真的有效吗?
  7. ASP静态HTML(局部)生成类
  8. 教师节送什么老师最开心?程序员三招解决家长送礼难题!
  9. 华为路由器ws5200虚拟服务器,想处理垃圾路由吗?那就先入手这款华为WS5200路由器吧...
  10. ETL第一篇(Kettle Spoon) 初遇
  11. 如何在 macOS Monterey 中管理应用程序和联系人的 Mac 通知?
  12. python zip压缩_用Python处理ZIP压缩包
  13. LCD屏的TCON、Source Driver、Gate Driver 、Gamma概念
  14. ArcGIS:横向图例设置
  15. Gradually Vanishing Bridge for Adversarial Domain Adaptation
  16. 苹果CMSV10本地DPLAYER播放器自动下一集设置教程
  17. 阅读契机-《认知天性》
  18. Android笔记之SeekBar的使用及问题
  19. 毕设--(AS)基于安卓的多功能日记本
  20. Cron表达式及SpringBoot定时任务使用简介

热门文章

  1. minicom HOWTO
  2. 久在樊笼里,复得返自然
  3. 好程序员HTML5大前端分享常用开发工具大集合
  4. Java入门系列-16-继承
  5. vim查找/替换字符串
  6. 关系型数据库之Mysql备份(五)
  7. MySQL高效分页解决方案集
  8. 中文金额大写转换处理
  9. 《经济学人》也谈 Python:它会是我们的未来吗?
  10. pandas DataFrame(2)-行列索引及值的获取