日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

快速開始

本文介紹如何快速將消息推送組件接入到 Android 客戶端。消息推送支持原生 AAR 和組件化(Portal & Bundle)兩種接入方式。

前提條件

操作步驟

要使用消息推送服務,您需要完成以下接入步驟:

  1. 添加推送 SDK。添加推送 SDK 依賴和 AndroidManifest 配置。

    1. 添加 SDK 依賴。根據不同的接入方式進行相應的操作:

    2. 添加 AndroidManifest 配置AndroidManifest.xml 中添加以下內容:

      說明

      如果是采用組件化方式接入,需要在 Portal 工程中添加 AndroidManifest 配置。

      <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
      
      <service
          android:name="com.alipay.pushsdk.push.NotificationService"
          android:enabled="true"
          android:exported="false"
          android:label="NotificationService"
          android:process=":push">
          <intent-filter>
              <action android:name="${applicationId}.push.action.START_PUSHSERVICE" />
          </intent-filter>
      </service>
      <receiver
          android:name="com.alipay.pushsdk.BroadcastActionReceiver"
          android:enabled="true"
          android:exported="true"
          android:process=":push">
          <intent-filter android:priority="2147483647">
              <action android:name="android.intent.action.BOOT_COMPLETED" />
              <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
              <action android:name="android.intent.action.USER_PRESENT" />
              <action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
          </intent-filter>
      </receiver>
    3. 推送 SDK 為了提高消息的到達率,內置了進程保活功能,包括上述 com.alipay.pushsdk.BroadcastActionReceiver 監聽系統廣播喚起推送進程,以及進程回收后的自動重啟,接入時可以根據自身需求決定是否啟用這些功能:

      1. 如不需要監聽系統啟動廣播,可刪除:

        <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
        <action android:name="android.intent.action.BOOT_COMPLETED" />
      2. 如不需要監聽網絡切換廣播,可刪除:

        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
      3. 如不需要監聽用戶喚醒廣播,可刪除:

        <action android:name="android.intent.action.USER_PRESENT" />
      4. 如不需要監聽充電狀態變化廣播,可刪除:

        <action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
      5. 如不需要監聽上述所有廣播,可將 com.alipay.pushsdk.BroadcastActionReceiverandroid:enabled 屬性設置為 false 。

      6. 如不需要推送進程回收后自動重啟,可在 application 節點下添加以下配置:

        <meta-data
        		android:name="force.kill.push"
        		android:value="on" />
        說明

        該配置僅在基線版本 10.2.3.21 及以上版本中有效。

  2. 初始化。初始化推送服務,建立客戶端和移動推送網關之間的長連接,這個長連接由推送 SDK 維護,即自建通道。

    根據不同的接入方式進行相應的操作:

    • 原生 AAR 方式

      • 如已在 Application 中調用初始化 mPaaS,則在 MP.init() 方法之后調用:

         MPPush.init(this);
      • 如未調用 mPaaS 初始化方法,則在 Application 中調用:

          MPPush.setup(this);
          MPPush.init(this);
    • 組件化方式

      LauncherApplicationAgentLauncherActivityAgentpostInit 方法中調用:

      MPPush.init(context);
  3. 創建 Service。創建 Service 繼承 MPPushMsgServiceAdapter,重寫 onTokenReceive 方法,接收自建通道下發的設備標識(token)。

    public class MyPushMsgService extends MPPushMsgServiceAdapter {
    
        /**
         * 收到自建通道 token 的回調
         *
         * @param token 自建通道 token
         */
        @Override
        protected void onTokenReceive(String token) {
            Log.d("收到自建通道 token: " + token);
        }
    
    }

    AndroidManifest.xml 中聲明該 Service:

    <service
        android:name="com.mpaas.demo.push.MyPushMsgService"
        android:exported="false">
        <intent-filter>
            <action android:name="${applicationId}.push.action.MESSAGE_RECEIVED" />
            <action android:name="${applicationId}.push.action.REGISTRATION_ID" />
            <category android:name="${applicationId}" />
        </intent-filter>
    </service>

    完成此步驟后,就可以在控制臺通過設備維度推送消息了,需要填寫的設備標識就是收到的 token。

  4. 綁定用戶 ID。此用戶 ID 由開發者自定義,既可以是真實用戶系統的用戶標識,也可以是能和每個用戶形成映射關系的其他參數,例如賬號、手機號等。

    在收到 token 后,可以將 token 和用戶 ID 綁定:

    String userId = "自定義 userId";
    ResultPbPB bindResult = MPPush.bind(context, userId, token);
    Log.d("綁定 userId " + (bindResult.success ? "成功" : ("錯誤:" + bindResult.code)));

    如已調用 MPLogger 設置過用戶 ID,可以在綁定時不傳入用戶 ID,例如:

    MPLogger.setUserId("自定義 userId");
    ResultPbPB bindResult = MPPush.bind(context, token);

    如需解綁用戶 ID,例如用戶退出登錄,可調用:

    ResultPbPB unbindResult = MPPush.unbind(context, userId, token);
    ResultPbPB unbindResult = MPPush.unbind(context, token);

    完成此步驟后,即可在控制臺通過用戶維度推送消息,需要填寫的用戶標識就是自定義的用戶 ID。

  5. (可選)綁定用戶手機號。

    重要

    目前,僅杭州非金融區提供短信補充服務。

    在收到 token 后,還可以將 token 和用戶的手機號碼綁定,同時將 token 與用戶 ID 和手機號綁定。綁定手機號碼后,用戶就可以通過該手機號碼收到相關推送短信。

    String userId = "自定義 userId";
    String phoneNumber = "138xxxxxxxx"
    ResultPbPB bindResult = MPPush.bind(context, userId, token,phoneNumber);
    Log.d("綁定 userId " + (bindResult.success ? "成功" : ("錯誤:" + bindResult.code)));

相關操作

  • 為提升消息推送的到達率,推薦接入 Android 手機廠商提供的推送通道,目前支持華為、小米、OPPO、vivo,具體操作參見 接入廠商通道

  • 收到消息后會自動發送通知,用戶點擊通知可自動打開網頁,如需根據自定義的 DeepLink 跳轉應用內頁面,或自定義收到消息后的行為,請參見 通知點擊處理

更多其他功能,參見 高級功能 說明文檔。

代碼示例

點擊此處 下載示例代碼包。

后續操作

接入完成后,可以通過服務端調用 RESTful 接口,推送消息。具體內容請參考 配置服務端