J'ai créé l'application simple avec un Activity
et manifeste comme ceci:Branch Android IO lien profond ne pas ouvrir ma demande
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="kz.ant.branchio">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:name=".MyApp">
<meta-data android:name="io.branch.sdk.BranchKey" android:value="key_live_XXXXXXXXXXX" />
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="branchiotestapp" android:host="open" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
<receiver android:name="io.branch.referral.InstallListener" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
</application>
</manifest>
Dans mon key_live_XXXXXXXXXXX
j'ai collé mes tableaux de bord clés en direct.
Puis dans ma demande, j'ai ajouté ceci:
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
Branch.getAutoInstance(this);
}
}
Mon MainActivity
a ces lignes de code:
@Override
protected void onStart() {
super.onStart();
Branch branch = Branch.getInstance();
branch.initSession(new Branch.BranchReferralInitListener(){
@Override
public void onInitFinished(JSONObject referringParams, BranchError error) {
if (error == null) {
// params are the deep linked params associated with the link that the user clicked -> was re-directed to this app
// params will be empty if no data found
// ... insert custom logic here ...
} else {
Log.i("MyApp", error.getMessage());
}
}
}, this.getIntent().getData(), this);
}
@Override
public void onNewIntent(Intent intent) {
this.setIntent(intent);
}
Mon application URI régime est branchiotestapp://
que je compris est lorsque l'utilisateur clique un lien avec ce régime, il devrait ouvrir mon application. Ensuite, je l'ai créé la page web HTML simple avec ce code:
<html>
<head>
<title>Test</title>
</head>
<body>
<a href="branchiotestapp://mysite.com">CLICK</a>
</body>
</html>
Quand j'ouvre ce code HTML avec mon navigateur de votre téléphone et clickt à ce lien, mon application android NE PAS OUVRIR même si elle est installée
Pourquoi cela se produit-il? Ai-je mal compris comment fonctionne branch.io?