In letzter Zeit muss meine Anwendung plattformübergreifende Freigabelinks verwenden. Es kommt nur vor, dass der AppLinking-Dienst von Huawei AppGallery Connect meinen Nutzungsszenarien entspricht.
In Bezug auf die Integrationsschritte gibt es auf der offiziellen Website viele Informationen. Ich werde die Schritte zusammenfassen
. Schritt 1: Erstellen Sie eine Anwendung und aktivieren Sie den AppLinking-Dienst
ii. Schritt 2: Erstellen Sie ein Linkpräfix
iii. Schritt 3: Integrieren Sie das AppLinking SDK in das Android-Projekt.
iv. Schritt 4: AppLinking erstellen
v. Schritt 5: AppLinking-Link empfangen und testen.
1. Erstellen Sie eine Anwendung und aktivieren Sie den AppLinking-Dienst
Erstellen Sie in der AGC- Konsole eine Anwendung oder verwenden Sie eine vorhandene Anwendung. Suchen Sie auf der Benutzeroberfläche nach Mein Projekt -> Wachstum -> AppLinking und klicken Sie auf Jetzt aktivieren.
Denken Sie nach dem Öffnen daran, unter Mein Projekt -> Projekteinstellungen -> Allgemein die Datei agconnect-services.json in den App-Pfad Ihres Android-Projekts herunterzuladen.
2. Erstellen Sie ein Linkpräfix
Klicken Sie unter AppLinking, das gerade aktiviert wurde, auf die Registerkarte Linkpräfix, klicken Sie auf Linkpräfix hinzufügen und erstellen Sie nach Bedarf ein eindeutiges Präfix im Live-Netzwerk.
Das System prüft automatisch, ob Ihr Domain-Name im gesamten Netzwerk eindeutig ist.
3. Integrieren Sie das AppLinking SDK in das Android-Projekt
Konfigurieren Sie die SDK-Adresse, öffnen Sie das Android-Projekt und konfigurieren Sie Folgendes in der Datei build.gradle auf Projektebene
buildscript {
repositories {
//….
maven {url 'https://developer.huawei.com/repo/'}
}
dependencies {
//….
classpath 'com.huawei.agconnect:agcp:1.4.1.300'![在这里插入图片描述](https://img-blog.csdnimg.cn/20201229190623817.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center)
}
}
allprojects {
repositories {
//….
maven {url 'https://developer.huawei.com/repo/'}
}
}
Öffnen Sie die build.gradle-Datei auf Anwendungsebene, konfigurieren Sie AppLinking und Huawei Analytics SDK und konfigurieren Sie den unten rot markierten Inhalt
…
apply plugin: 'com.huawei.agconnect'
...
dependencies {
...
implementation "com.huawei.agconnect:agconnect-applinking:1.4
implementation 'com.huawei.hms:hianalytics:5.0.4.301'.1.300"
}
4. Erstellen Sie AppLinking
Es gibt zwei Möglichkeiten, AppLinking zu erstellen: Eine besteht darin, es direkt auf der AGC-Schnittstelle zu erstellen, und die andere darin, es im Android-Projekt mit der API-Schnittstelle des Codes zu erstellen.
4.1 AppLinking in der AGC-Schnittstelle erstellen:
1. Der Schnittstelleneintrag lautet wie folgt: Klicken Sie auf AppLinking erstellen und erstellen Sie ihn dann Schritt für Schritt gemäß den Schritten.
2. Mit der Standard-Deep-Link-Konfiguration habe ich gerade eine offizielle Huawei-Website nach Belieben gefunden. Achten Sie auf die Konfiguration von Android Deep Link.
3. Verhalten von Android-Links, konfiguriert als: In Android-Anwendung öffnen.
Nachdem Sie es erstellt haben, können Sie es kopieren und verwenden
4.2 Endseitige Codeerstellung AppLinking
1. Konfigurieren Sie zuerst die Schnittstelle in activity_main.xml: zwei Schaltflächen, eine zum Erstellen und eine zum Freigeben, und erstellen Sie dann ein TextView-Anzeigefeld zum Anzeigen von AppLinking.
<Button
android:id="@+id/create"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Create App Linking"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.4" />
<TextView
android:id="@+id/showLink"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="your App Linking"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.5" />
<Button
android:id="@+id/shareLink"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Share App Linking"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.8" />
Wie nachfolgend dargestellt:
2. Kopieren Sie dann das soeben erstellte Linkpräfix, fügen Sie es der Konstante hinzu und konfigurieren Sie zuerst die DeepLink-Adresse, die geöffnet werden muss.
private static final String DOMAIN_URI_PREFIX = "https://testapplinking1016.drcn.agconnect.link";
private static final String DEEP_LINK = " https://consumer.huawei.com/cn/";
private static final String Android_DEEP_LINK = "myapp://testapplinking/?data=1016";
private String shortLink;
2. Verwenden Sie in OnCreate of MainActivity die Schaltfläche Erstellen, um AppLinking zu erstellen
findViewById(R.id.create).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AppLinking.Builder builder = new AppLinking.Builder()
.setUriPrefix(DOMAIN_URI_PREFIX)
.setDeepLink(Uri.parse(DEEP_LINK))
.setAndroidLinkInfo(new AppLinking.AndroidLinkInfo.Builder()
.setAndroidDeepLink(Android_DEEP_LINK).build());.build());
builder.buildShortAppLinking().addOnSuccessListener(shortAppLinking -> {
shortLink = shortAppLinking.getShortUrl().toString();
TextView showAppLinking = findViewById(R.id.showLink);
showAppLinking.setText(shortLink);
}).addOnFailureListener(e -> {
Log.e("AppLinking", "Failure + "+ e.getMessage());
});
}
});
3. Verwenden Sie die Schaltfläche shareLink, um das gerade erstellte AppLinking freizugeben
findViewById(R.id.shareLink).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, shortLink);
startActivity(intent);
}
});
5. Erhalten Sie zugehöriges AppLinking
Beim Empfang gibt es zwei Schritte: Der eine besteht darin, die Manifestdatei zu konfigurieren, und der andere darin, die getAppLinking-Methode am Eingang des Links zu konfigurieren:
1. Konfigurieren Sie die Manifestdatei: Beachten Sie, dass hiermit das Schema des DeepLink-Domänennamens
konfiguriert wird: Mein DeepLink lautet beispielsweise: DEEP_LINK = "myapp: // testapplinking /? Data = 1016";
private statische endgültige Zeichenfolge DEEP_LINK = "myapp: // testapplinking /? Data = 1016";
Dann muss die Manifestdatei so konfiguriert werden
<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="testapplinking" android:scheme="myapp" />
</intent-filter>
2. Konfigurieren Sie im Haupteingang von OnCreate getAppLinking, rufen Sie den Link ab und zeigen Sie ihn an
AGConnectAppLinking.getInstance().getAppLinking(this).addOnSuccessListener(resolvedLinkData -> {
if (resolvedLinkData != null) {
String Result = resolvedLinkData.getDeepLink().toString();
TextView showAppLinking = findViewById(R.id.showLink);
showAppLinking.setText(Result);
}
});
6. Packen und testen Sie das Phänomen.
1. Klicken Sie nach dem Ausführen der Anwendung auf die Schaltfläche Erstellen, um einen AppLinking-Link zu erstellen und auf der Benutzeroberfläche anzuzeigen.
2. Klicken Sie auf die Schaltfläche Freigeben, um den AppLinking-Link in der Notiz für die temporäre Speicherung freizugeben, und klicken Sie dann auf den Link in der Notiz, um ihn über den Browser zu öffnen. Der Browser kann die Anwendung direkt öffnen und der Test ist abgeschlossen.
(AppLinking, das über die Benutzeroberfläche erstellt wurde, ist ebenfalls identisch. Sie können es zuerst in die Haftnotiz kopieren und dann klicken, um die Haftnotiz zu testen.)
Weitere Einzelheiten finden Sie unter:
https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction
7. Zusammenfassung
Die Integration ist einfach, das SDK basiert auf einer geringen Größe und kann plattformübergreifende Freigabe realisieren. Sowohl Android als auch iOS können dies unterstützen. Es ist nicht erforderlich, unterschiedliche Anpassungen auf unterschiedlichen Plattformen vorzunehmen, wodurch Arbeitsaufwand gespart wird.
Der Betrieb und die Heraufstufung können auf der AGC-Schnittstelle erstellt werden, und die Entwicklungs- und Freigabefunktion kann mit Code auf der Endseite erstellt werden, was perfekt ist.
Referenzdokumente:
Dokument zur Entwicklung des Huawei AGC AppLinking-Dienstes:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction
Ursprünglicher Link:https://developer.huawei.com/consumer/cn/forum/topic/0204406653695530273?fid=0101271690375130218
Verfasser: Jessyyyyy