Android、iOS、Android アプリのプッシュ メッセージ通知、携帯電話への Java バックグラウンド プッシュ アプリ通知のチュートリアル

1. 事業紹介

1.1 製品の紹介

GeTui は商用グレードのモバイル アプリケーション メッセージ プッシュ クラウド サービス プロバイダーです。クライアント SDK は Android および iOS プラットフォームをサポートしています。SDK を統合した後、開発者は GeTui の強力な Web エンドと豊富な API オープン インターフェイスを通じてプッシュ メッセージを送信できます。プッシュ効果を統計的に分析します。アプリのアクティビティを効果的に改善し、ユーザー維持率を向上させることができます。

1.2 用語の定義

ここに画像の説明を挿入します
ここに画像の説明を挿入します

1.3 メッセージプッシュプロセス

ここに画像の説明を挿入します

2. アプリケーションの作成

GeTui アカウントをまだお持ちでない場合は、GeTui 公式 Web サイトでアカウント登録を完了できます。
プッシュ アプリケーションがまだない場合は、デベロッパー センターの手順の [サービスの追加] を参照して、メッセージ プッシュ アプリケーションの作成を完了できます。

3. クライアントSDKの統合

モバイル デバイスでパーソナル プッシュ メッセージ プッシュ サービスを使用する必要がある場合は、まずクライアント SDK の統合を完了する必要があります。

3.1 アンドロイド

Android GeTui メイン パッケージ: GeTui は Android アプリケーション用の安全で安定したプッシュ SDK を提供します. メイン パッケージを統合した後は、「オンライン プッシュ」のみが使用可能になります。
Android マルチベンダー パッケージ: GeTui は、主流の Android メーカーと協力してメーカー プッシュ SDK を統合します。GeTui 開発者センターのバックグラウンドでマルチベンダー パラメーターを設定し、マルチベンダー パッケージを統合した後、「オフライン プッシュ」を同時に、Android メーカーのパフォーマンスを向上させることができ、デバイス上のメッセージ到着率も向上します。
メーカー ニュース レポートの完成: 個人プッシュではインプレッションが返されないため、Huawei、Honor、OPPO、および vivo には完全なオフライン クリック レポート レポートがありません。個人プッシュのバックエンドでより完全なプッシュ データ統計を確認しやすくするために、クライアント側で完了を報告することをお勧めします。

3.2 iOS

iOS GeTui メイン パッケージ: GeTui は、iOS アプリケーション用の安全で安定したプッシュ SDK を提供しており、メイン パッケージを統合した後は、「オンライン プッシュ」のみが使用可能になります。
iOS プッシュ証明書: iOS がサポートするプッシュ通知機能 Apple の公式開発者 Web サイトから証明書をエクスポートし、Personal Push Developer Center のバックグラウンドで設定した後、「オフライン プッシュ」を同時に使用できるため、パフォーマンスが向上します。 iOS デバイスでのメッセージ到着率。

4. サーバープッシュ

開発者は、サーバー RestAPI V2 を呼び出すか、GeTui 開発者センターにログインすることで、ページからメッセージを送信できます。(単一の cid ユーザーにプッシュする場合は、最初にクライアントから cid を取得する必要があります)

4.1 サーバーメッセージ配信プロセス(必読)

CID がオンラインの場合 (つまり、アプリが開いていてフォアグラウンドで実行されている場合):

メッセージはプッシュ チャネルを通じてクライアントに送信されます。

具体的には、サーバーのRestAPI-V2コードでは、push_message内の通知(notification)または送信(透過的送信)の内容がクライアントに渡されます。

注: iOS システムではプッシュ オンライン通知メッセージが表示されないため、プッシュ ユーザーが iOS の場合は、push_message で送信のみが使用でき、オンライン受信時には iOS クライアントが独自に通知バーを表示します。

CID がオフラインの場合 (つまり、アプリがバックグラウンドにあり、画面がロックされ、プロセスが閉じられている場合):

対応するメーカーのオフライン機能が有効になっている場合、メッセージはプッシュ側を通じて対応するメーカーのサーバーに要求されます。

具体的には、サーバー側の RestAPI-V2 コード、つまり、push_channel の通知コンテンツがメーカーに渡され、実際のメッセージがメーカーのサーバー経由でクライアントに送信されます。対応するメーカー関数がオンになっていないものについては、オンの場合、メッセージはプッシュ オフライン ライブラリに保存され、CID がオンラインになるのを待ってから、プッシュ チャネルを通じてクライアントに送信されます。

注: サーバーの Push_channel が値を渡さない場合、オフライン メッセージを受信できません。

4.2 デベロッパー センター バックエンド

GeTui Developer Center にログインし、GeTui メッセージ プッシュ dos ページに入り、以下の 2 つの方法で [プッシュの作成] を行うことができます。

https://dev.getui.com/
登録完了後、メッセージプッシュサービスに入ります:
ここに画像の説明を挿入します
ここに画像の説明を挿入します
新しいテストアプリを作成します 構築が完了すると、My -> Application Management でアプリ情報を取得できます:
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここの情報後でサーバー上に保存されます。電話をかけるときに使用されます。興味のある友人は、研究価値の高いサーバー SDK のデモをダウンロードできます。

4.3 プッシュコード

その他の詳細やクライアント情報は追加しませんが、GeTui 公式 Web サイトのドキュメントに詳しい説明が記載されています。
https://docs.getui.com/getui/server/rest_v2/service_sdk/

依存関係を追加します。

<dependency>
    <groupId>com.getui.push</groupId>
     <artifactId>restful-sdk</artifactId>
     <version>1.0.0.1</version>
 </dependency>
GtApiConfiguration apiConfiguration = new GtApiConfiguration();
        //填写应用配置
        apiConfiguration.setAppId("-----");
        apiConfiguration.setAppKey("-----");
        apiConfiguration.setMasterSecret("-----");
        // 接口调用前缀,请查看文档: 接口调用规范 -> 接口前缀, 可不填写appId
        apiConfiguration.setDomain("https://restapi.getui.com/v2/");
        // 实例化ApiHelper对象,用于创建接口对象
        ApiHelper apiHelper = ApiHelper.build(apiConfiguration);
        // 创建对象,建议复用。目前有PushApi、StatisticApi、UserApi
        PushApi pushApi = apiHelper.creatApi(PushApi.class);

        //推送
        //根据cid进行单推
        PushDTO<Audience> pushDTO = new PushDTO<Audience>();
        // 设置推送参数
        pushDTO.setRequestId(System.currentTimeMillis() + "");
        PushMessage pushMessage = new PushMessage();
        pushDTO.setPushMessage(pushMessage);
        GTNotification notification = new GTNotification();
        pushMessage.setNotification(notification);
        notification.setTitle("测试标题" + new Date());
        notification.setBody("哈哈哈");
        notification.setClickType("url");
        notification.setUrl("https://www.getui.com");
        // 设置接收人信息
        Audience audience = new Audience();
        pushDTO.setAudience(audience);
        audience.addCid("77b5b288038f1a418d071-----------");

        // 进行cid单推
        ApiResult<Map<String, Map<String, String>>> apiResult = pushApi.pushToSingleByCid(pushDTO);
        if (apiResult.isSuccess()) {
    
    
            // success
            System.out.println(apiResult.getData());
        } else {
    
    
            // failed
            System.out.println("code:" + apiResult.getCode() + ", msg: " + apiResult.getMsg());
        }

試験結果:
ここに画像の説明を挿入します

5. パラメータの説明

https://docs.getui.com/getui/server/rest_v2/common_args/

ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
公式 SDK プロジェクトをダウンロードして表示できます。

おすすめ

転載: blog.csdn.net/wang121213145/article/details/128953874