Recientemente, mi aplicación necesita usar enlaces de intercambio multiplataforma, pero el servicio AppLinking de Huawei AppGallery Connect cumple con mis escenarios de uso.
En cuanto a los pasos de integración, hay mucha información en el sitio web oficial,
resumiré los pasos i. Paso 1: Crea una aplicación y activa el servicio AppLinking
ii. Paso 2: cree un prefijo de enlace
iii. Paso 3: Integrar AppLinking SDK en el proyecto de Android;
iv. Paso 4: Crear AppLinking
v. Paso 5: Reciba el enlace AppLinking y pruebe.
1. Cree una aplicación y active el servicio AppLinking
En la consola de AGC , cree una aplicación o use una aplicación existente, busque Mi proyecto -> Crecimiento -> AppLinking en la interfaz y haga clic en Activar ahora.
Después de abrir, recuerde ir a Mi proyecto -> Configuración del proyecto -> General, descargue el archivo agconnect-services.json en la ruta de la aplicación de su proyecto de Android.
2. Crea un prefijo de enlace
En AppLinking que se acaba de activar, haga clic en la pestaña de prefijo de enlace, haga clic en Agregar prefijo de enlace y cree un prefijo único en la red en vivo según sea necesario.
El sistema lo comprobará automáticamente para asegurarse de que su nombre de dominio sea único en toda la red.
3. Integrar AppLinking SDK en el proyecto de Android
Configure la dirección del SDK, abra el proyecto de Android y configure lo siguiente en el archivo build.gradle a nivel de proyecto
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/'}
}
}
Abra el archivo build.gradle a nivel de aplicación, configure AppLinking y Huawei Analytics SDK, y configure el contenido marcado en rojo a continuación
…
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. Cree AppLinking
Hay dos formas de crear AppLinking: una es crearlo directamente en la interfaz de AGC y la otra es crearlo en el proyecto de Android con la interfaz API del código.
4.1 Crear AppLinking en la interfaz AGC:
1. La entrada de la interfaz es la siguiente: haga clic en Crear AppLinking y luego créelo paso a paso de acuerdo con los pasos.
2. Con la configuración de enlace profundo predeterminada, acabo de encontrar un sitio web oficial de Huawei a voluntad. Preste atención a la configuración del enlace profundo de Android.
3. Comportamiento del enlace de Android, configurado como: abrir en la aplicación de Android.
Después de crearlo, puede copiarlo y usarlo
4.2 Creación de código del lado final AppLinking
1. Primero configure la interfaz en activity_main.xml: dos botones, uno para crear y otro para compartir, luego cree un cuadro de visualización TextView para mostrar 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" />
Como se muestra abajo:
2. Luego copie y agregue el prefijo de enlace que acaba de crear a la constante, y primero configure la dirección de DeepLink que debe abrirse.
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. En OnCreate de MainActivity, use el botón crear para crear AppLinking
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. Usando el botón shareLink para compartir el AppLinking recién creado
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. Recibir AppLinking relacionado
Hay dos pasos al recibir, uno es configurar el archivo de manifiesto y el otro es configurar el método getAppLinking en la entrada del enlace:
1. Configurar el archivo de manifiesto: Tenga en cuenta que esto es para configurar el esquema del nombre de dominio de DeepLink: Por
ejemplo, mi DeepLink es: DEEP_LINK = "myapp: // testapplinking /? Data = 1016";
Cadena final estática privada DEEP_LINK = "myapp: // testapplinking /? Data = 1016";
Entonces, el archivo de manifiesto debe configurarse así
<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. En la entrada principal de OnCreate, configure getAppLinking, obtenga y muestre el enlace
AGConnectAppLinking.getInstance().getAppLinking(this).addOnSuccessListener(resolvedLinkData -> {
if (resolvedLinkData != null) {
String Result = resolvedLinkData.getDeepLink().toString();
TextView showAppLinking = findViewById(R.id.showLink);
showAppLinking.setText(Result);
}
});
6. Empaque y pruebe, verifique el fenómeno.
1. Una vez que la aplicación se esté ejecutando, haga clic en el botón Crear para crear un enlace AppLinking y mostrarlo en la interfaz.
2. Haga clic en el botón Compartir para compartir el vínculo AppLinking en la nota para almacenamiento temporal y luego haga clic en el vínculo en la nota para abrirlo a través del navegador. El navegador puede abrir la aplicación directamente y la prueba está completa.
(AppLinking creado desde la interfaz también es el mismo, puede copiarlo primero en la nota adhesiva y luego hacer clic para probar a través de la nota adhesiva)
Para obtener más detalles, consulte:
https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction
7. Resumen
La integración es simple, el SDK se basa en un tamaño pequeño y puede realizar uso compartido entre plataformas. Tanto Android como iOS pueden admitirlo. No es necesario realizar diferentes adaptaciones en diferentes plataformas, lo que ahorra carga de trabajo.
La operación y la promoción se pueden crear en la interfaz AGC, y la función de desarrollo y uso compartido se puede crear con código en el extremo, lo cual es perfecto.
Documentos de referencia:
Documento de desarrollo del servicio Huawei AGC AppLinking:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction
Enlace original:https://developer.huawei.com/consumer/cn/forum/topic/0204406653695530273?fid=0101271690375130218
Autor: Jessyyyyy