Unity で ARFoundation

http://tsubakit1.hateblo.jp/entry/2018/11/21/211400
を参考に ARFoundationを試してみる。
Androidはすんなり実行できた。

iOSは Unity 2019 で作っていると以下のようなエラーが

参照したいライブラリが足りないようだ。
Unity 2018にすれば大丈夫という情報を得て再度作成

xcode に ARKit.framework を手動で追加しないといけなかったけど
無事に実行できた。

Unity Hub から最新版にしても、最新版にならない?

Unity 2018.2 から Unity 2019.1.8f1 に変更してみたが
新規プロジェクトを Unity HubからUnity 2019.1.8で作成しているのに
エディタは  Unity 2018.2 のまま。

よく見たらインストール後は Unity Hub をアップデートしないといけないみたい
Unity Hubの画面にも表示されてました。

cordova で windows アプリ

コマンドで環境を作る前に、visualStudioで環境が作れるのかを試す。

空プロジェクトを実行しようとすると以下のエラーが

DEP0100: ターゲット デバイスで開発者モードが有効になっていることを確認してください。エラー 800704C7 のため、開発者ライセンスを取得できませんでした。

「windows+x」 → 「設定」 → 「開発者向け」 → 「開発者モード」を選択
することで、実行できました。

WindowsアプリでもユニバーサルWindowsプラットフォーム(UWP)だから
なのでしょうね。

cordova で node.js を使ったチャットアプリ

クライアント側のnode.jsとサーバー側のバージョンを合わせないとうまくいかない。

バージョンが例えば 2.0.0 をサーバー側で使用していたら、クライアント側も
以下のように同じバージョンを指定すればうまくいく。
<script type=”text/javascript” src=”https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.0/socket.io.js”></script>

でも、以下のような感じで使えば、バージョンは必ず同じにできる。
<script type=”text/javascript” src=”http://hogehoge.jp:3000/socket.io/socket.io.js”></script>

それ以外の注意はあまりなく、ネット上にあるようなサンプルと同じ感じで利用できる。

cordova-plugin-firebase が急にバージョンチェックでコンパイルできない

以前までコンパイルできていたプロジェクトが以下のようなエラーになる。

The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[15.0.2,15.0.2]], but resolves to 15.0.4. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

ネットで色々と調べていると、
https://github.com/arnesson/cordova-plugin-firebase/issues/1066

cordova-plugin-firebase で利用される個々のライブラリのバージョンを指定する必要があるとのこと
とりあえず、
cordova platform rm android
cordova plugin rm cordova-plugin-firebase
cordova plugin add cordova-plugin-firebase@latest –save
plugins\cordova-plugin-firebase\plugin.xml を編集して
====================================
<framework src=”com.google.android.gms:play-services-tagmanager:16+” />
<framework src=”com.google.firebase:firebase-core:16.0.8″ />
<framework src=”com.google.firebase:firebase-messaging:17.5.0″ />
<framework src=”com.google.firebase:firebase-config:16.4.1″ />
<framework src=”com.google.firebase:firebase-perf:16.2.4″ />
====================================
cordova platform add android@latest

cordova run android
だが、別のエラーが
platforms\android\build.gradle を編集して
====================================
classpath ‘com.google.gms:google-services:4.1.0’

classpath ‘com.google.gms:google-services:4.2.0’
====================================
cordova run android
だが、別のエラーが

根本的に cordova-plugin-firebase の更新を待つべきかもしれないが
依存関係を無視するという方法があり
platforms\android\app\build.gradle を編集して
最終行に以下を追加
====================================
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
====================================
cordova run android
で実行はできた。プッシュ通知は安定して送られるのか?
この解決はあかんのだろう。

apache のログがローテートされていない?

/var/log/httpd/access_log が開けないくらいファイルが
大きくなっていた。logrotate されていない?

/etc/logrotate.d/httpd 内に削除したフォルダーが含まれていた
それを取り除いて

実行しないでの確認方法
logrotate -dv /etc/logrotate.conf

実行しての確認方法
logrotate -v /etc/logrotate.conf

facebook 指定されたURLは、アプリケーションの設定で許可されていません

テストユーザーを登録したのに、件名のようなエラーがでる。
Androidでテストするには Androidのプラットフォーム追加を developer facebook で行っておかないといけない。

アプリIDはanroidで開発者登録しておいた方が良いし
Androidなら、キーハッシュが必要。

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: *