tencent cloud

フィードバック

iOS

最終更新日:2022-11-21 16:34:35

    オフライン通知機能は、Appがバックエンドで実行中またはオフライン状態の場合でも、オーディオビデオ通話の着信を受信できる機能です。TUICallKitはAppleが提供するシステムレベルのプッシュチャネル(APNs)を使用してメッセージの通知を行います。

    ステップ1:オフラインプッシュの設定

    1. APNs証明書の申請:具体的にはオフラインプッシュ(iOS)のステップ1をご参照ください。

    2. IMコンソール設定:具体的にはオフラインプッシュ(iOS)のステップ2をご参照ください。

    3. Appへの毎回のログイン時に、AppleからdeviceTokenを取得します。具体的にはオフラインプッシュ(iOS)のステップ3をご参照ください。

    4. IM SDKにログイン後、deviceTokenをTencent Cloudにアップロードします。具体的にはオフラインプッシュ(iOS)のステップ4をご参照ください。

    説明:

    その後の手順はTUICallKitがすでに完了していますので、オフラインプッシュ(iOS)のその他の手順を参照する必要はありません。

    ステップ2:プロジェクトの設定

    アプリケーションプログラムに必要な権限を追加する必要があります。Xcodeプロジェクトでプッシュ通知機能を有効にしてください。

    Xcodeプロジェクトを開き、Project > Target > Capabilitiesページで赤枠内の+ボタンをクリックし、Push Notificationsを選択して追加します。追加後の結果は図の黄色枠のようになります。

    上記の手順が完了し、プロジェクトを実行すると、TUICallKitのオフライン通知機能を体験できるようになります。

    よくあるご質問

    1、プッシュ通知を受信できず、バックエンドでbad devicetokenというエラーが表示されました。

    AppleのdeviceTokenは現在のコンパイル環境に関連しています。IMSDKにログイン後にdeviceTokenをTencent Cloudにアップロードした際に使用した証明書IDがtokenと一致しなかった場合、エラーが表示されます。

    Release環境を使用してコンパイルした場合、- application:didRegisterForRemoteNotificationsWithDeviceToken:のコールバックで返されるのはリリース環境のtokenです。この場合、businessIDには本番環境の証明書IDを設定する必要があります。

    Debug環境を使用してコンパイルした場合、- application:didRegisterForRemoteNotificationsWithDeviceToken:のコールバックで返されるのは開発環境のtokenです。この場合、businessIDには開発環境の証明書IDを設定する必要があります。

    V2TIMAPNSConfig *confg = [[V2TIMAPNSConfig alloc] init];
    /* ユーザーは自身でAppleに開発者証明書を登録します。開発者アカウントに証明書(p12ファイル)をダウンロードして生成し、生成したp12ファイルをTencent証明書管理コンソールに渡すと、コンソールは証明書IDを自動生成し、証明書IDを以下のbusiIdパラメータに渡します。*/
    //証明書IDをプッシュします
    confg.businessID = sdkBusiId;
    confg.token = self.deviceToken;
    [[V2TIMManager sharedInstance] setAPNS:confg succ:^{
    } fail:^(int code, NSString *msg) {
    }];
    

    2、iOS開発環境で、登録してもdeviceTokenが返されないことや、APNsのtokenリクエストに失敗したと表示されることがあります。

    この問題の現象はAPNsサービスが不安定なために発生します。次の方法で解決を試みることができます。

    1. スマートフォンにSIMカードを挿入し、4Gネットワークを使用してテストを行う。

    2. アンインストールして再インストール、Appの再起動、シャットダウンして再起動を行ってからテストを行う。

    3. 本番環境のパッケージを作成してテストを行う。

    4. 他のiOSシステムのスマートフォンに代えてテストを行う。

    お問い合わせ

    カスタマーサービスをご提供できるため、ぜひお気軽にお問い合わせくださいませ。

    テクニカルサポート

    さらにサポートが必要な場合は、サポートチケットを送信して弊社サポートチームにお問い合わせください。24時間365日のサポートをご提供します。

    電話サポート(24 時間365日対応)