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 の不具合は発生しないんだけど、
それでも安定版ではないということかな?

facebookConnectPlugin.login failure

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

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

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

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

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

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

とりあえず、 nodebrew で管理。
サーバーはCentOS
rpm だと nodeバージョンが固定になる。
nvm でもいいんだろうけど。

$ cd
$ mkdir node
$ cd node/

$ wget git.io/nodebrew
$ perl nodebrew setup
もしくは
$ curl -L git.io/nodebrew | perl – setup

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

$ nodebrew -v
$ nodebrew ls
$ nodebrew install-binary stable
もしくは
$ nodebrew install-binary v9.11.2
$ nodebrew ls

この時点ではまだパスが通っていない

以下で利用できる
$ nodebrew use stable
もしくは
$ nodebrew use v12.12.0

※CentOS6 くらいだと
$ nodebrew use v9.11.2  くらいなら libc のバージョンが存在しないエラーが出ない

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)されていないということかな?

Dex Loader Failed to load dx.jar

[YYYY-MM-DD 00:00:00 – Dex Loader] Failed to load C:\android\android-sdk\build-tools\28.0.3\lib\dx.jar
[YYYY-MM-DD 00:00:00 – projectname] 不明なエラー: Unable to build: the file dx.jar was not loaded from the SDK folder!

Eclipseで 上記のようなエラーになった場合。
Eclipse をやめて、Android Studio にするべきなのだが・・・

Android SDK Manager から
Android SDK Build-tools の 25.0.3 を追加し

project.properties ファイルに
sdk.buildtools=25.0.3 を追加

このバージョン以上だと、何故か上記のエラーになる

ARKitなどで距離を計測する仕組み

https://wired.jp/2017/09/13/the-physics-behind-the-magical-parallax-effect-running-your-ar-apps/

視差で距離を計測することができるので
加速度センサーを視差とみたてて、距離を割り出しているようです。
なので、基準点を多く表示して画面を平行に振る動作には
距離を計測に必要な作業のようです。

Android で課金テスト「出版社はこのアイテムを購入できません」でる

出版社という意味が良くわからないが、
開発者アカウントではという意味だと思われる。

「開発者アカウントではこのアイテムを購入できません」

テスト用に別のアカウントを作成してAndroidに設定して動作確認。
とても面倒くさい。

「指定したアイテムを購入できません」と出たら
テストアカウントでログインされていない可能性もあるので、
アカウントを変更してから、アプリをストアからダウンロードして確認。

重要なことは、テストで課金してしまわないように
テストを行うアカウントを
google play console の
設定 → デベロッパーアカウント → アカウントの詳細 → ライセンス テスト に
カンマ区切りでアカウントを追加しておくこと

そうすると、購入ダイアログで
「これはテスト用の注文です。課金は発生しません。」
と表示される。