cordova-line-login-plugin を iOS で利用

android は windows 環境で問題なく動作確認できたが
iOS は swift も絡んでいるせいないのか
cordova plugin add でうまくインストールできなかった

mac 環境で 実行すれば問題ない
先に swift ように Carthage をインストールしておく必要あり

https://qiita.com/tsuzuki817/items/8f6e2e0c2b3f9d197097

LINEアカウント認証

cordova-line-login-plugin を利用することで連携ができそう。

facebook アカウント連携と違って、簡単に公開できるので
公開しないと動作確認もできなかった。

cordova Manifest merger failed : uses-sdk:minSdkVersion 15 cannot be smaller than version 19 declared in library

Manifest merger failed : uses-sdk:minSdkVersion 15 cannot be smaller than version 19 declared in library [:CordovaLib]
c:\xxxxxxxxxx\platforms\android\CordovaLib\build\intermediates\library_manifest\debug\AndroidManifest.xml as the library might be using APIs not available in 15
Suggestion: use a compatible library with a minSdk of at most 15,
or increase this project’s minSdk version to at least 19,
or use tools:overrideLibrary=”org.apache.cordova” to force usage (may lead to runtime failures)

config.xml に以下のような行を追加
<preference name="android-minSdkVersion" value="19" />
<preference name="android-targetSdkVersion" value="27"/>

Unity で ARFoundation

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

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

Undefined symbol
_OBJC_CLASS_$_ARObjectScanningConfiguration

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

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

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 add cordova-android-firebase-gradle-release@3.0.0
cordova plugin add cordova-android-play-services-gradle-release@3.0.0
※最新で 4.0.0 だったが、3.0.0 でないとエラー。詳しくは調べずに、3.0.0 に。

根本的に 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