問題タブ [android-c2dm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ip - C2DM のファイアウォール設定
Android システムで 1 つのテスト アプリを開発し、C2DM プッシュに WiFi 接続を使用しようとしましたが、IT 部門は. ファイアウォール ポート 5228 を開くための C2DM IP アドレスを提供できることを願っています。Google C2DM サーバーの IP アドレスまたは FQDN を知っている人はいますか? ありがとうございました
android - c2dmサーバーアプリケーションからAndroidハンドセットでアプリケーションまたはアクティビティをアクティブ化することは可能ですか?
私はまだAndroidの開発を行っていませんが、ブラウザを使用して携帯電話のアプリケーションと対話できるクライアントサーバーアプリケーションを作成したいと思います。
c2dmを使用してアプリケーションを起動したり、Androidハンドセットでのアクティビティなどの他のことを実行したりできるかどうか疑問に思っていますか?
理想的には、アプリエンジンでサーバー側を実行します。
android - C2DM登録IDをアプリケーションサーバーに送信する方法
デバイスの登録IDを取得するために(C2DMチュートリアルから)Androidアプリを実装することができましたが、アプリケーションサーバーに送信する方法がわかりません。誰かが私にそうする方法を教えてもらえますか?ありがとう。
android - Android c2dm は自動的に登録解除されます
デバイスに通知を送信すると、このデバイスはプッシュ メッセージを受け取りますが、「com.google.android.c2dm.intent.RECEIVE」ではなく「com.google.android.c2dm.intent.REGISTRATION」インテントを受け取ります。 . 2 番目の通知を送信しようとすると、Google から「NotRegistered」エラーが表示されます。
認証トークン「APA91... -119 characters-」を取得するため、デバイスは正常に登録されます (推測します)。
デバイスの登録を開始するコードは次のとおりです。
送信者 (これは Android デバイスで行われます):
私の受信機:
サーバー側でプッシュ通知を行うと、常に「InvalidRegistration」エラーが発生するため、デバイスでプッシュ通知を行います。
奇妙なことに、登録されているように見えますが、1 つのプッシュ メッセージを送信すると、Google のようにデバイスの登録が解除されます。
アイデア/提案はありますか?
android-c2dm - Android C2DM ポート番号の選択
Google C2DM (プッシュ) tcp 接続がポート 5228 を使用していることに気付きました。一部のファイアウォールが 80 443 以外のポートをブロックしていることも知っています (htttp と https のため)。これにより、多くのユーザーがマーケットを使用できないと不満を漏らしています。たとえば、会社のwifiを使用して電話でアプリまたはGTalk。
ここで私の質問は、Google が永続的な TCP 接続にポート 443 または 80 を選択しなかったのはなぜですか?
android - C2dMの悪い面
Android 2.2の時点で、プッシュ通知システム(C2dM)が存在することは誰もが知っています。しかし、それを使っている開発者はあまりいません。次のプロジェクトでは、このシステムを使用する予定です(そう願っています)。それで、私がそれを掘り下げる前に、私はそれの悪い面が何であるかを知りたいですか?なぜ人々はそれを使わないのですか?
2.2より古いシステムとの非互換性のためだけではありません。
android - c2dmコードは、それを登録するのと同じアプリケーションで作成する必要がありますか?
私はAndroidの新しい開発者であり、Androidc2dmサービスについていくつかの説明が必要です。プッシュ通知を受信するために登録する必要があるアプリケーションがあります。私の質問は、通知を受け取るコードが、アプリケーションと同じEclipseプロジェクトの一部であるかどうかです。その場合、プロジェクトが実行されておらず、アプリケーションが「オフ」の場合、アプリケーションはプッシュ通知を受け取ります。
前もって感謝します
android - Androidのc2dmリスナーからアプリを実行していない状態でウェイクアップ/起動するにはどうすればよいですか?
アプリがバックグラウンドで実行されていないときに、テスト中に問題が発生します。私はそれにc2dmメッセージをブロードキャストし、それを受信しました。サービスはAsyncTaskを実行してサーバーからデータを取得します。「onPostExecute」で失敗し、MessageQueueエラーが発生するまで、すべて問題ありません。
デッドスレッドのハンドラーにメッセージを送信する
アプリがバックグラウンドで実行されている場合はすべて正常に動作しますが、そうでない場合は失敗します。どういうわけかそれを起こさなければなりませんか?ありがとう!
更新:これが私のAsyncTaskのスニペットです:
更新#2:エラースタックトレース
android - C2DM登録プロセス中に追加のデータをC2DMReceiverに渡しますか?
既存のクライアント/サーバーAndroidアプリケーションでC2DMをセットアップしています。このアプリには、サーバーとの通信、ユーザーのログイン、サーバーで使用するための認証トークンの維持のためのクラスのセットがすでに確立されています。
ドキュメントに従って、C2DMに登録するコードを追加し、応答を受信するBroadcastReceiverを作成しました。BroadcastReceiver内で、登録IDを含むonReceive()メソッドが呼び出されています。デバッガーで確認して、コンソールに記録できます。
問題は、IDをサーバーに送信する必要があることですが、アプリケーションの残りの部分にアクセスできないため、送信できません。BroadcastReceiverは、インテントやコンテキストなど、私がよく知っているものではありません。ユーザーの認証トークンがあればこれを回避できますが、それも取得できません。登録インテントの追加として渡してみましたが、途中で迷子になってしまいます。
onReceive()メソッドでエクストラまたはアプリケーションコンテキストを取得する正しい方法は何ですか?
ありがとう、フランク
android - Android C2DM 登録 ID
c2dm を使用するアプリを作成しています。
アプリのメインの「意図」が起動するたびに、登録 ID を要求することになっていると思います。私はこれを行ってきましたが、各リクエストの結果が新しい文字列になるようで、同じデバイスのデータベースに多数の登録 ID が積み重なってしまいます。そのうちの1つだけが機能すると思います。ただし、ユーザーが複数のデバイスを所有している場合、複数のデバイスで通知を受信できるようにするため、古いものを削除したくありません。
これをどのように処理すればよいですか?