Open e-ishi opened 8 years ago
ncmb.Installation.fetchById で thenに流れていないのかなと思うので、catchをつけてみてはどうでしょう?
ではなく、
ならエラーが返ってくるかも知れません。後はMonacaアプリをデバッガービルドにすればSafariやGapDebugなどでデバッグができるかなと。
then catch then にしましたがエラーは表示されませんでした。 ncmb.Installation.fetchById(id)の「ncmb」はどこかで宣言しなくてもよいのでしょうか? 見当違いでしたらすみません
ニフティクラウド mobile backend用テンプレートを使用し、上記のjsを追加しています。 プッシュ通知は受け取れます。
ncmbはNCMBのJavaScript SDKを読み込んだ上で、 var ncmb = new NCMB(application_key, client_key); で使えるようになります。プッシュ通知用プラグインとは別で読み込む必要があります。
ありがとうございます。 ncmbを宣言し、他も少し変更してみました。 しかし前回と同じく ncmb.Installation.fetchById(id) .then(function(installation){ からうごかなくなります。
一つずつデバッグするのが良いかと思います。ncmbがあるか、ncmb.Installation、ncmb.Installation.fetchByIdがあるかといった具合です。
ncmbはobjectなのにncmb.Installationがundefinedだったのでncmb-2.0.0.min.jsがあやしいと思い、いろいろ試したら動くようになりました。 ありがとうございました。
詳細 今回monacaの”ニフティクラウド mobile backend用テンプレート” をベースに開発しており、ncmb.jsがncmb-2.0.0.min.jsでした。 ncmb.jsの更新履歴を確認したところ 「v2.0.1 追加 Installationクラスを追加しました。プッシュ配信端末情報の取得・変更・削除が可能になります。」 とありました。
最新の2.0.2のncmb.min.jsをダウンロードして使用したところ動くようになりました。
良かったです!
前回解決したものはandroid4.2.2でした ひきつづきandroid4.4.2とios9.2で動作確認をしたところ、上記の解決前と同じように ncmb.Installation.fetchById(id).then(function(installation){ でエラーになりました。 window.NCMB.monaca.setDeviceTokenへ登録はできているのでプッシュ通知は使用できますが、その他の絞り込みに使用する予定のフィールドの取得、更新ができません。
.catch(function(err) のerrの内容は 「SecurityError:Refused to connect to 'https://mb.api.cloud.nifty.com/2013-09-01/installations/XXトークンXX' because it violates the document's Content Security Policy.」
どなたかご教示ください。
追記 セキュリティーポリシーのメタタグ部分です。関係あるかわかりませんが
タグが消えました もう一度 <meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com; style-src 'self' 'unsafe-inline';">
セキュリティーポリシーのメタタグをコメントアウトしたらうごきました。 タグを解析してみます。
user_name、user_birthdayフィールドのデータをアップデートしたいが出来ません。 以下のプログラムです。 また、user_name、user_birthdayフィールドはncmb上に作成しております。 mmonacaを使用しております。 記述違いなどご教授頂けると幸いです。