Pushwooshの好みとして登録を管理する方法 -- android フィールド と push-notification フィールド と cordova フィールド と google-cloud-messaging フィールド 関連 問題

How do I manage registration as a preference in pushwoosh?












0
vote

問題

日本語

私は公式ガイドしかし、それが通知のためにあなたのアプリを登録するだけで、ユーザーがオプトアウトできる方法はありません。 getRemoteNotificationStatus メソッドがAndroidバージョンのプラグインで利用できないため、デバイスが登録されているかどうかわからない方法はありません。この情報を入手できますか?

私は私がアプリの好みとしてそれを保存するので、外部に何かを問い合わせる必要はなく、最近のバージョンのAndroidでは、アプリの外で通知を無効にすることができます。これは私の別々のアプリの好みと矛盾する/矛盾しますか?

私のコード(私がテストしていること)これまでのところ:

<事前> <コード> (function() { var pushPrefApply = function() { app.pushPref(function(pushPref) { console.log('pushPref', pushPref); if (!pushPref) { window.plugins.pushNotification.unregisterDevice( function() { console.log('unreg ok', arguments); }, function() { console.log('unreg fail', arguments); } ); return; } window.plugins.pushNotification.registerDevice( { projectid: '123456789012', appid : 'F0000-BAAAA' }, function(pushToken) { console.log('reg ok', arguments); }, function(status) { console.log('reg fail', arguments); } ); }); }; //UI code for changing push preference goes here, calls pushPrefApply $document.on('appready', function() { pushPrefApply(); }); })();

"( { ID = 338; Name = "Driver "; }, { ID = 339; Name = "Officer "; } )" 0 はタイプミックではありません。すでに定義されています。 <コード> "( { ID = 338; Name = "Driver "; }, { ID = 339; Name = "Officer "; } )" 1 は、優先フェッチ機能です。 <コード> "( { ID = 338; Name = "Driver "; }, { ID = 339; Name = "Officer "; } )" 2 は、 "( { ID = 338; Name = "Driver "; }, { ID = 339; Name = "Officer "; } )" 3 の他の場所で行われています。 "( { ID = 338; Name = "Driver "; }, { ID = 339; Name = "Officer "; } )" 4 は、<コード> 9988877615 の後にイベントとローカルデータストレージライブラリによってトリガされた他のイベントが発生する合成イベントです。

英語

I followed the official guide but found that it just registers your app for notifications over and over, and there's no way a user can opt out. There doesn't seem to be a way to tell if the device is registered or not because the getRemoteNotificationStatus method is not available in the Android version of the plugin. How can I get this information?

I thought I'd save it as a preference in the app so I wouldn't have to query anything external, but more recent versions of Android allow you to disable notifications outside of the app. Will this deregister/conflict with my separate in-app preference?

My code (that I'm testing with) so far:

(function() {     var pushPrefApply = function() {         app.pushPref(function(pushPref) {             console.log('pushPref', pushPref);             if (!pushPref) {                 window.plugins.pushNotification.unregisterDevice(                     function() {                         console.log('unreg ok', arguments);                     },                     function() {                         console.log('unreg fail', arguments);                     }                 );                 return;             }             window.plugins.pushNotification.registerDevice(                 {                     projectid: '123456789012',                     appid : 'F0000-BAAAA'                 },                 function(pushToken) {                     console.log('reg ok', arguments);                 },                 function(status) {                     console.log('reg fail', arguments);                 }             );         });     };      //UI code for changing push preference goes here, calls pushPrefApply      $document.on('appready', function() {         pushPrefApply();     }); })(); 

$document is not a typo, it's defined already. app.pushPref is the preference fetching function. window.plugins.pushNotification.onDeviceReady has been done elsewhere on deviceready. appready is a synthesized event that I fire after both deviceready and another event triggered by a local data storage library.

</div
           

回答リスト

2
 
vote
vote
ベストアンサー
 

あなたは正しいことをしています。

残念ながら、AndroidはPush通知が有効/無効のステータスを取得するためのAPIを提供していないためです。そして、この設定は非常に深く埋められています私は本当にユーザーがそれを見つけることができるでしょう。

とにかく登録情報をローカルに保ち、現時点で唯一の選択肢です。
 

You are doing the right thing.

Unfortunately that's the only option as Android does not provide you with the API to get push notifications enabled/disabled status. And this settings is buried so deep in the options I really doubt users will be able to find it.

Anyway keeping the registration information locally is the only option at the moment.

</div
 
 

関連する質問

181  install_failed_duplicate_permission ... c2d_message  ( Install failed duplicate permission c2d message ) 
私は私のアプリでGoogle通知を使っています、そして今まで私はマニフェストの下で下にしました: <事前> <コード> <!-- GCM --> <uses-permission android:name="android.permission.GET_ACC...

17  Google Cloud MessagingのAndroidのインスタントメッセージング  ( Instant messaging on android with google cloud messaging ) 
私はちょうど新しいGoogle Cloud Messaging(GCM)を見ていて、あなたのAndroidアプリケーションでインスタントメッセージングのためにGCMを使用することが可能であるかどうか疑問に思いましたか? 私はあなたがサーバーからのメッセージのよ...

1  新しいGCMのためのAndroid HttpSurlConnectionとJSON  ( Android httpsurlconnection and json for new gcm ) 
C2DMを交換するために新しいGCMサービスを使用するために私のアプリの特定の部分を見直しています。テストのためにJavaプログラムからJSON要求を作成してから、応答を読み込みたいだけです。現在、JSON要求とGoogleサーバーに常にコード400を返すフ...

11  GCM証明書の設定が機能しないか、またはiOS  ( Gcm certificate configuration not working or ios ) 
GCMを確信して設定ファイルを取得しようとしているときに1つの問題に直面しています。 GCMポータルを介して生産証明書をアップロードしようとしているとき、それは「 bundle IDはに入力したバンドルIDと一致しません。私はすでに同じことを確認しました。ま...

4  ローカルネットワークのためのGCM代替またはデバイスIPへのメッセージの送信  ( Gcm alternative for local networks or sending messages to device ip ) 
私のローカルネットワークに接続されているデバイスに通知を送信したいです。 最初の代替案はGCMでしたが、これはGoogle Serverへのメッセージを送信してから、Google Serverはメッセージをデバイスに送信します。 現在私のローカルネットワークが...

1  Androidクライアントで認識されていないサーバーからのJSON GCMメッセージ  ( Json gcm message from server not being recognised on the android client ) 
JSON GCMメッセージを送受信しようとしていますが、クライアント上では常にUTF8として通過するようです。 <事前> <コード> protected HttpURLConnection post(String url, String contentTyp...

0  また、プレイするFacebookの友達へのAndroidゲームをリンクします  ( Linking android game to facebook friends who also play ) 
私は、ネットワーク上で再生されるAndroidプラットフォームのカードゲームを作成しようとしています。 Google App Engineをサーバーのバックエンドに使用することを望んでおり、Google Cloud Messagingがプレーヤーに通知すること...

1  バンドルデータを解析します  ( Parse bundle data ) 
私は私のアプリでGCMを使っています、そして私はサーバーからクライアントにいくつかのデータを送信しています。データはこれです: <事前> <コード> { registration_id: '', time_to_live: 60, 'data.type...

11  Android GCMを使用すると、Deep JSONの「データ」フィールドを使用できますか?  ( With android gcm can you use a deep json data field ) 
それでは、を送ることができます <事前> <コード> { "registration_ids": ["whatever", ...], "data": { "foo": { "bar": { "baz": [42] ...

0  PUSHSHARP「通知送信タイムアウト」の問題  ( Pushsharp notification send timed out issue ) 
PushSharpを使用して、Google GCMを使用してMy Mobileデバイスに通知を送信しようとしています。 サンプルコードを書いたことに応じて、GitHubからサンプルアプリケーションをダウンロードしました。以下は私のサンプルコードです。 <事前...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有