cordova-plugin-local-notification

cordova plugin add cordova-plugin-local-notification
でインストールすると
cordova-plugin-local-notification 0.9.0-beta.2 のバージョンがインストールされ、色々問題があった。通知時にアプリが起動しているとフリーズするなど

cordova plugin rm cordova-plugin-local-notification
cordova plugin add cordova-plugin-local-notification@v0.8
として、バージョンをしていするとうまくいったようだ。
@latest でうまくいくとは限らない。

cordova plugin add cordova-plugin-local-notification@latest だと
cordova-plugin-local-notification 0.9.0-beta.2
がインストールされるが、以下でインストールすると本当の最新になる。
cordova plugin add cordova-plugin-local-notification@0.9.0-beta.3
こちらでは、beta.2 の不具合は発生しないんだけど、
それでも安定版ではないということかな?

from origin ‘null’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

サーバーに通信したところ、件名のエラーが発生。
セキュリティの問題、不特定多数の端末からアクセスされる前提なので

.htaccess に以下を追加すれば大丈夫。
Header append Access-Control-Allow-Origin: *

No installed build tools found. Install the Android build tools version 19.1.0 or higher.

windowsマシンに新たにcordova環境を作ろうとして
Android Studio を入れたらAndroid SDK もインストールされると思って安心していたら
上記のエラー、パスは勝手に設定してくれないみたい。
以下のパスを追加
C:\androidのSDKパス\platform-tools

facebookConnectPlugin.login failure

クエリ実行を失敗した 1675030 のようなエラー
簡単につながっていたはずが、何故エラー?

原因は、端末にインストールされているfacebookアプリのアカウントが
開発者として登録されていなかったから、開発中はこのような制限があるようだ。

https://developers.facebook.com より
役割→役割 テスターとして登録してみた。
開発者アカウントとフレンドになっていなかったので、Facebook ID で入力
ログインアカウントはフレンドになっているアカウントのみ

もちろん、テストユーザー側で承認を行う必要がある。

よく見てみたら facebook のテストユーザーは開発者サイトで設定できるようだ。
Open Graph Test User

javascript console.log を非表示にする方法

これまでは、

のような作り方にしていたが、ログを見た時に 出力されたファイルや行数が
trace関数の場所になり、場所を特定するのが面倒でした。

そこで、関数自体を上書きさせることで、解決。

node.js を サーバーに入れてみた。

$ cd
$ mkdir node
$ cd node/
$ wget git.io/nodebrew
$ perl nodebrew setup

$ vi ~/.bashrc
最後に追加
=====================================================
export PATH=$HOME/.nodebrew/current/bin:$PATH
=====================================================
$ source ~/.bashrc

$ nodebrew -v
$ nodebrew ls
$ nodebrew install-binary stable
$ nodebrew ls
$ nodebrew use v10.15.1

A problem occurred configuring project ‘:CordovaLib’. You have not accepted the license agreements of the following SDK components:

android の platform を削除後、build 仕様とすると上記のエラーが [Android SDK Platform 27]. のライセンスをacceptしないといけないらしい。

What went wrong:
A problem occurred configuring project ‘:CordovaLib’.
You have not accepted the license agreements of the following SDK components:
[Android SDK Platform 27].
Before building your project, you need to accept the license agreements and complete the installation of the missing components using the Android Studio SDK Manager.
Alternatively, to learn how to transfer the license agreements from one workstation to another, go to http://d.android.com/r/studio-ui/export-licenses.html

原因が不明ではあるが、 android studio をインストールし

File -> settings -> Appearance & Behavior -> System Settings -> Android SDK より

API Level 27 のインストールしてみたところコンパイルでき、実行できた。

自動でインストールされているSDKは承認(license agreements)されていないということかな?

cordova-plugin-firebase iOS バナーが表示されない

window.FirebasePlugin.onNotificationOpen のイベントは届くのに バナーが表示されない。 firebase 側の問題なのかなと思っていたが、 xcode でコンパイルを Legacy Build にするとで直った。 File -> Project Settings -> Build System を New Build System (Default) を Legacy Build System にすることで対応