手机访问支付宝网页版的人都知道。如果你的手机上安装有支付宝,那么在访问支付宝手机网页时就会自动打开支付宝app,否则在页面上会提示你进行下载app。
也许你会感觉这个功能很炫,这是如何实现的呢?在今天这个功能可能被大家用乱了,但是在当初支付宝使用这个功能时,大伙还是很惊奇的,最后通过分析支付宝移动web源码才找到结果。
下面我就为大家揭秘这个做法的全部代码实现:
首先为了保证能够打开你的app,你必须要在androidManifest.xml中配置的filter中data的属性表述。<data android:pathprefix="/taoge/open" android:scheme="xttblog"></data> androidManifest.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.taoge"
android:versionCode="2"
android:versionName="3.24.03" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:configChanges="orientation|screenSize"
android:icon="@drawable/logo"
android:label="@string/app_name"
android:logo="@drawable/logo"
android:sharedUserId="android.uid.system"
android:theme="@android:style/Theme.Light.NoTitleBar" >
<activity
android:name="xttblog.WelcomeActivity"
android:excludeFromRecents="true"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Light.NoTitleBar" >
<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.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:pathPrefix="/taoge/open"
android:scheme="xttblog" />
</intent-filter>
</activity>
<activity
android:name="xttblog.AntRepairActivity"
android:label="@string/title_activity_ant_repair" >
</activity>
</application>
</manifest>
其次,你要在你的网页中访问xttblog://taoge/open。可以使用的元素有很多,如:script,iframe,img等。使用它们的src属性,访问xttblog://taoge/open。html5代码如下:
<!DOCTYPE HTML>
<html>
<script>
function openapp(){
document.getElementById('xttblog').innerHTML='<iframe src="xttblog://taoge/open"></iframe>';
}
</script>
<body>
<div style="display:none;" id="xttblog"></div>
<input type="button" value="打开app" onclick="openapp();">
</body>
</html>
附原文地址:http://www.xttblog.com/?p=287

: » HTML5打开本地app(应用)的方法
原创文章,作者:端木书台,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/251124.html