Enviando Notificiaciones, 화웨이 폐기 추진
Con el kit Push,podemos enviar notificaciones Push o mensajes de datos a los usuarios de nuestra app desde app Gallery Connect Console o mediante la API Push.공공장소에서quiero mostrar có mo envier notificiaciones y mensajes de datos con el kit.
청구서
Habilitar el servicio Push en la sección Mis proyectos>Crecer>Kit de Push
Integrando el SDK
Agregue el SDK de Push Kit al nivel de aplicación build.글라델
실시화웨이.hms: 추력: 4.0.2.300'
Crea una clase que extienda desde HmsMessageService,este servicio recibiráel token de inserción y los mensajes de datos.
classMyHuaweiPushService: HmsMessageService() {
overridefunonNewToken(p0: String?) {
super.onNewToken(p0)
}overridefunonMessageReceived(message: RemoteMessage?) {
if(message!=null){
val map=message.dataOfMap
for( key in map.keys){
//explore the KV fields
}
}
}
}
Agrega el servicio al Android 목록<uses-permissionandroid:name="android.permission.INTERNET" /> <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permissionandroid:name="android.permission.READ_PHONE_STATE" /> <service android:name="com.hms.example.dummyapplication.service.MyHuaweiPushService" android:enabled="true" android:exported="false"> <intent-filter> <actionandroid:name="com.huawei.push.action.MESSAGING_EVENT" /> </intent-filter> </service> <meta-data android:name="com.huawei.hms.client.appid" android:value="appid=xxxx"> <!-- Replace the value of xxxx with the actual app ID applied, sourced from Service Details, HUAWEI Developer. --> </meta-data>
Obteniendo el 푸시 영패Para envir mensajes a dispositivos specíficos,necesitas conocer el token de inserción del dispositivo,este token es un ID de cliente Para el kit de inserción.
미국 unhilo separado para obtener el token de inserción
fungetToken() {
val tokenThread = Thread {
try {
val appId = AGConnectServicesConfig.fromContext(context).getString("client/app_id")
val pushtoken = HmsInstanceId.getInstance(context).getToken(appId, "HCM")
if (!TextUtils.isEmpty(pushtoken)) {
Log.i("GetToken", "push token:$pushtoken")
}
} catch (e: Exception) {
Log.e("Token Exception", "getToken failed, $e")
}
}
tokenThread.run()
}
El token puede cambiar con El tiempo,por lo que se recomienda solicitar un token en cada inicio de la aplicación.Si no se puede llamar al mé todo get Token, 화웨이 푸시 세트 almacena en caché autom á ticamente la clustud del token y vuelve a llamar al mé todo.Luego se devolver á un token은 través del mé todo on New Token입니다.
También podemos habilitar la inicialización automática,después de configurar esta capacidad,el token aplicado se devuelve a través del método onNewToken().
Agrega estos metadatos bajo la aplicación en el Android Manifest para habilitar el inicio automático de inserción.
<meta-data
android:name="push_kit_auto_init_enabled"
android:value="true" />
Enviando mensajes 회사Hay 2 tipos de mensajes.
Mensajes de notificación
Mensajes de datos
Puedes enviar mensajes utilizando la consola AGC o enviando una COLLECTUD a la API PushEnviar mensajes desde la consola 회사
Ve a tu proyecto>Crecimiento>Push Kit y luego hazclic en Agregar notificación
환경 알림
Para las notificiaciones,podemos editar el contenido y ver una vista previa.Agrega una acción que se realizarácuando el usuario toque la notificación.Escoge entre una de las siguientes opciones:
1.Abrir aplicación:abre la actividad desde el Home o establecer un deeplink para Abrir una actividad Escífica.
2. Abrir página 사이트: abre un navegador en la página Specificada por la URL.
Si eliges la aplicación abierta,podrás enviar pares de clave valor personalizados que se Entergarán a la aplicación en la intención adicional de la actividad abierta.
Si deseas proportcionar más acciones a tu notificiación,puedes agregar botones para realizar una de las siguientes acciones:
미국 este mé todo si deseas activar tu aplicación para realizar una operación specí fica con los datos.El mensaje activaráEl método on messagereceived de tu HmsMessageService y puedes recurperar los datos del objeto RemoteMessage.
overridefunonMessageReceived(message: RemoteMessage?) {
if(message!=null){
Log.i("OnNewMessage",message.data)
val map=message.dataOfMap
for( key in map.keys){
Log.e("onNewMessage",map[key]!!)
}
}
}
플로반도Para verificar el comportamiento de nuestro mensaje,podemos hacer clic en probar efecto y envirar el mensaje a los tokens specificados
Ingresa el token o los token y haz
Cuando estés listo para envier el mensaje,podrás configurar el alcance de envío para envier el mensaje a tokens Escíficos,Audicinia de Huawei Analytics,suscriptores de temas o todos sus Usarios.
Para el tiempo de inserción,puedes configurar“ahora”o programar el envío del mensaje.
Haz clic en enviar para enviar tu mensaje o GARDAR como borrador para usarlo más tarde.
Request
Host: https://oauth-login.cloud.huawei.com/oauth2/v2/token
Request Method: POST
Request Headers:
'Content-Type': 'application/x-www-form-urlencoded'
Request Body (encoded in urlEncode mode):
grant_type=client_credentials&client_id=YOUR_APP_ID&client_secret=APP_SECRET
응답 Ejempo:HTTP/1.1200 OK
Content-Type: text/html;charset=UTF-8
{"access_token":"CFyJ7eTl8WIPi9603E7Ro9Icy+K0JYe2qVjS8uzwCPltlO0fC7mZ0gzZX9p8CCwAaiU17nyP+N8+ORRzjjk1EA==","expires_in":3600,"token_type":"Bearer"}
Enviando mensajes 회사Request
Host: https://push-api.cloud.huawei.com/v1/[appid]/messages:send
Request Method: POST
Request Headers:
Content-Type: application/json
Accept: application/json
Authorization: Bearer ACCESS_TOKENRequest Body: body = { message: { android: { notification: { title: title, body: message, click_action: { type: 1, intent: "https://dummyapp.com/target?param1=hello¶m2=world", action: "ACTION_VIEW" } }, data: "Data payload in string format" }, token:["token1","token2"] } };
결론Si envías los datos sin un objeto de notificiación,el mensaje activarápor default el método on messagereceived.
Si deseas probar el push kit,crear plantillas de Notificiación o Si no tienes tu propio servidor,escoge la consola de inserción.
Si deseas envier notificiaciones generadas dinámicamente,escoge la API
Reference
이 문제에 관하여(Enviando Notificiaciones, 화웨이 폐기 추진), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/huaweidevslatam/enviando-notificaciones-push-a-dispositivos-huawei-5bj8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)