<activity android:name=".activity.LoadingActivity" android:label="${APP_NAME}" android:screenOrientation="portrait" android:theme="@style/FirstActivityTheme"> <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:host="android"android:scheme="wushang" /> </intent-filter></activity>
Par exemple, wushang ici est un schéma. Cela devrait être l'identifiant unique de l'application. Sinon, lorsque H5 se réveillera, une boîte de sélection apparaîtra pour choisir quelle application démarrer. Hôte signifie démarrer la page. En fait, cela devrait être remplacé par un nom de package tel que com.android.sky. public void onCreate(Bundle savedInstanceState) {
Uri uridata = this.getIntent().getData();
String mydata = uridata.getQueryParameter("data");
}
Ensuite, vous pouvez faire une interception de chaîne ou autre. .
C'est relativement simple, ajoutez simplement la balise méta <meta http-equiv="refresh" content="0;url=wushang://android?data=sky">
en tête en haut de la page. Lorsque la page sera actualisée, cette balise accédera au lien et. démarrez l’application. Mais il y a un problème. S'il s'agit du navigateur Safari du système Apple, un message d'erreur sera donné lors de l'accès à l'en-tête avec cette méta. Par conséquent, cet en-tête peut être transmis via l'en-tête <a href="wushang://android">open Android app</a>
Mais en utilisation réelle À l'heure actuelle, il est nécessaire de juger du type de plate-forme du client et de savoir s'il se trouve dans le navigateur intégré de WeChat, cette approche n'est donc certainement pas possible. <.>
<script type="text/javascript">
$('#go').tap(function(){
window.location.href = "wushang://android";
});</script>
Je ne connais pas la raison précise. Il se peut que l'événement Tap utilise une touche légère. Puis après quelques explorations, j'ai utilisé l'événement click, ou j'ai directement marqué la fonction handler sur la balise a pour éviter ce problème
<a id="go" >open Android app</a><a href="javascript:startApp()">
open</a><script src="../res/lib/zepto.min.js?1.1.11"></script><script src="../res/lib/public.js?1.1.11"></script><script>$('#go').click(function () { if(publicFun.isIos()){
alert('it is IOS')
}else{
window.location.href = "wushang://android";
}
});function startApp(){ if(publicFun.isIos()){
alert('it is IOS')
}else{
window.location.href = "wushang://android";
}
}</script>
J'ai donc décidé de l'utiliser si je rencontre cela genre de problème à l'avenir. Ce qui suit est la fonction de traitement réelle
En fait, il existe un moyen très simple, qui consiste à accéder directement à l'application. Que ce soit sur Android ou IOS, ainsi que sur WeChat et non-WeChat. La page de téléchargement de l'App Store a deux fonctions : téléchargement et ouverture (si elle est sur la plateforme IOS, c'est en se connectant à l'App Store)
4. Plateforme IOS
Pour le problème de non-ouverture dans iOS9 et versions ultérieures, iOS9 fournit en fait une meilleure solution : lien universel.
Il s'agit d'une fonctionnalité lancée par iOS9. Si votre application prend en charge les liens universels, vous pouvez facilement lancer l'application via un lien HTTP traditionnel (si votre application est déjà installée sur l'appareil iOS) (pas besoin de créer une application). tout jugement supplémentaire, etc.), ou ouvrez une page web (votre application n'est pas installée sur l'appareil iOS). Peut-être que cela peut être expliqué plus simplement. Avant iOS9, pour la nécessité de réveiller l'APP à partir de divers navigateurs, Safari, UIWebView ou WKWebView, nous ne pouvions généralement utiliser que le schéma.
Ce qui précède vient de l'introduction sur les liens universels sur Internet. Pour le front-end, en termes simples, vous accédez à une URL http si cette URL contient du contenu correspondant aux règles du fichier de configuration que vous avez soumis au développement. plate-forme, le système iOS essaiera d'ouvrir votre application. Si elle ne peut pas être ouverte, le système vous redirigera vers le lien que vous souhaitez visiter dans le navigateur. C'est un très bon attribut, car grâce à cet attribut, nous pouvons contourner l'interception de WeChat et ouvrir l'application sur iOS9.
Donc, l'événement de clic ci-dessus sert simplement à accéder à l'App Store, car si l'application est installée, elle sera déjà dans l'APP lorsque le navigateur y accédera.
Ce sont toutes des choses de configuration IOS, donc je n'écrirai pas plus. En ce qui concerne le passage des paramètres et l'orientation de la page, cela équivaut en fait à obtenir l'URL actuellement connectée dans UIWebView, puis à effectuer un fractionnement et une vérification des chaînes pour déterminer à quelle page accéder et obtenir les valeurs des paramètres.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!