• 通过浏览器调用Android要么iOS应用


            在做移动应用的单点登录时间,需要点击浏览器中启动链接APP和参数传递APP其中,用于处理相应的接口,现在,通过浏览器调用Android和iOS在应用过程中实现理清固化博客。为了查询。

    一:通过浏览器调用Android应用

    1)改动配置文件AndroidManifest.xml,在须要打开的activity下加入例如以下配置:

     <intent-filter> 

            <data android:scheme="ssotest" /><!-- 通过这个ssotest打开应用程序,可自行定义。

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

    2)在HTML中。加入<a href='ssotest://'>ssotest</a>,就可以点击此链接打开APP。

    3)其它的APP也能够通过例如以下方式打开该应用:

    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("ssotest://")));  

    4)假设想传递參数,能够在url追加就可以,比方:

    <a href='ssotest://id=123456'>ssotest</a>

    5)接受并解析參数,在接收的Activity中使用例如以下代码获得參数:

    this.getIntent().getScheme();//获得Scheme名称  

    this.getIntent().getDataString();//获得Uri所有路径。依据格式自己解析字符串就可以。

    二:通过浏览器调用iOS应用

    1)改动plist文件,注冊对外的URL

     A:找到project的<app>info.plist

     B: 点击 information property list后面的加号,从列表中选择URL types 

     C: 展开URL types,再展开Item0,将Item0下的URL identifier改动为URL Scheme

     D: 展开URL Scheme,将Item0的内容改动为ssotest(可自行定义)

    2)在HTML中。加入<a href='ssotest://'>ssotest</a>。就可以点击此链接打开APP。

    3)假设想在启动的APP中接受此URL并进行特殊的处理。能够改动project的AppDelegate.m,重写openURL方法,例如以下:

    - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url    sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

       // 可通过[url scheme]获得定义的Scheme名称

       // 可通过[url absoluteString] 获得整个的URL路径。可解析传递过来的数据

    }

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    从源码分析 XtraBackup 的备份原理
    移动端 SDK 开发经验总结及梳理
    spring boot jar包开机自启
    在Simulink中添加VeriStand支持
    java 启动脚本
    Docker容器日志管理最佳实践
    docker 日志限制或者删除
    网盘搜索
    tuple c++
    google原版:Debugging WebAssembly with modern tools
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4685037.html
Copyright © 2020-2023  润新知