ラベル cordova の投稿を表示しています。 すべての投稿を表示
ラベル cordova の投稿を表示しています。 すべての投稿を表示

API30とAPI31の壁

Google先生はだいたい年1回ぐらいのペースでOSをアップデート。

一方、当方はしばらく更新していないアプリがいくつかあります。

『デジスロ』の最終アップデートは2017年3月31日

targetSdkVersionが23


2022年10月にGoogle先生からのお達し





targetSdkVersionが29以前のアプリに対して

今まではアプリ放置を黙認していたけど、これからは厳しくなるよ。

2022年11月からは定期的にアップデートしてね。

31以上にすることをおすすめするよ。

 


作業としては

targetSdkVersionの値を書き換えてコンパイルするだけで済む・・・

こともありますが、ここ最近はそんなすんなり済んだことはない。

前回はAPI30の壁。

ややこしいことがありましたが、

対象は・・・新規もしくはアップデートするアプリ。

targetSdkVersionを30にする必要があった。

詳細は →→→ [突破ファイル]アプリ制作のハードル2021


今回はどうでしょうか?

対象は・・・公開中のすべてのアプリ。(←まずこれが厄介)

targetSdkVersionが29以前のアプリを30もしくは31にする。

期限は2022年11月まで。

30であれば、間に合いそう。

試しに31に書き換え、実機(Android12)にインストールしようとすると、

解析エラーとなりインストできない。

再び30に戻せば問題なく動きます。

これは互換モードで動いているからだとか???


cordovaのバージョンが9のままです。

cordova9がサポートしているのはAndroid10(API29)まで。

Android Platform Guide

Android12(API31)が正式にサポートされているのはcordova11

これでtargetSdkVersionを31にしても

実機で動くようになる。

そうこうしている間に期限が迫る。

ここで朗報、今までGoogle先生が決めた期限は絶対でしたのに

期限延長をリクエストできるとな???


2023年5月までになり、だいぶ余裕ができました。


targetSdkVersionが30未満だったアプリは8本

2022年末は怒涛のアップデートラッシュ。

2022/12/12 - デジスロVer1.0.8

2022/12/15 - トラック太郎Ver1.2.0

2022/12/18 - モンキー125風スピードメーターVer1.1.0

2022/12/19 - トラック八郎Ver1.2.0

2022/12/23 - 変則チェスVer1.1.0

2022/12/25 - 日本三大○○Ver1.0.4

2022/12/29 - 戦国CASTVer1.1.0

2022/12/29 - 幕末CASTVer1.0.8


Google先生がお決めになった新たなルール

“アプリは定期的にアップデートしなさい(放置アプリは許さない!)

今回は何とかクリアしましたけど。。。

[突破ファイル]アプリ制作のハードル2021

アプリ制作のハードルは、

以前に比べだいぶ下がってきている今日この頃・・・

ですが、GooglePlayで公開するための手続きは

相変わらずハードルが高いような、クセが強いような。

(Google先生、もう少しお手柔らかにお願いします。)


わかりやすいところで、GoogleChromeブラウザ

ある日突然、

謎のアイコンが現れたり、使っていた機能が消えたり・・・

同じようなことがGooglePlayでもあり、

今回のハードルはここ数年で最も高かったのではないでしょうか。


ハードルの内容は

  1. Android 11 (API レベル 30)で動くようにせよ
  2. 署名スキームをV1からV2にせよ
  3. 新規アプリの公開はApp Bundleで行え


中でも最も厄介だったのがApp Bundle

お知らせ、警告は2019年からでしょうか?

アプリをアップした際に

Android App Bundleを使用するとアプリのサイズを小さくすることができます。

と警告されていました。

その後、警告は以下のように変わりました。

2021 年 8 月より、Google Play での新規アプリの公開は
Android App Bundle で行う必要があります。

Android App Bundleがツールであるかのようにも受け取れます。

もっとシンプルに

今までGooglePlayにアップしていたファイルの拡張子が*.apkでしたが、

*.aabにしてくださいと説明した方がわかりやすいのではないでしょうか。


すべてのアプリ制作デベロッパーが

Google謹製のAndroidStudioを使っているわけではなく、

他にもツールがあり、中には*.aabを出力できないツールがあることを

Google先生は把握している、把握した上でこの変更(*.apk⇒*.aab)

確信犯?そう疑ってしまう一文がAndroid App Bundleの詳細説明ページに

App Bundle をビルドするのは、ほとんどの場合それほど難しくはありません。


アプリのサイズを小さくすることが目的ならば

*.apkでも数MBの場合は*.aabでなくてもOKというルールにしても

問題ないと思うのですが、新規アプリは強制的に*.aabとしたということは

いずれ既存アプリも*.aabにせよとお達しがくるのでしょう。


当方はMicrosoft謹製のVisualStudioを用いて

Cordovaアプリを制作してきたわけですが、

VisualStudio2019以降Cordovaが含まれないため

使用しているのはVisualStudio2017

11月に入って、新規アプリを制作開始

11月末、*.apkをアップしたところ

有効な App Bundle をアップロードしてください

Google先生が何かしらのツールを提供してくださって

*.apkから*.aabに変換できるなど、期待していたのですが、お手上げ状態。


その後はすっかり諦めて開発環境を変えることに。

VSCODE、AndroidStudioをインストール。

OnsenUI、AngularJS・・・

VisualStudio2017で作成したアプリのソースを移植。

アイコンの変更すらちょっとしたハードルでした。

とりあえず*.apkで出力し、実機で検証。

*.aabの出力はコマンドラインから。

  • cordova build android --release -- --keystore=* --storePassword=* --alias=* --password=* --packageType=bundle

果たして、Google先生はこの*.aabを受け付けてくれるのでしょうか・・・

2021/12/05 22:49アップロード

2021/12/07 13:48にGoogle先生よりメール受信(Your update is live)


どのタイミングだったのかわかりませんが、

環境変数が妙な場所に書き換えられ、まったく動かないなんてこともありました。

Google先生なら、クラウド上にアプリ開発環境を提供できると思うのですがどうなんでしょう?

と思うほど、

環境によっては一筋縄では行かない

そこそこ高いハードルだった*.aab(Android App Bundle)でした。

そのハードルを突破して出来上がったのが

こちら↓

ザ・パタパタ10
開発元:HA823
価格:無料(広告を含む)
Get it on Google Play

『AndroidとiPhone』この差って

パソコンは日本でも世界でも『Windows』

スマホの主流 パソコンの主流
日本 iOS(iPhone) Windows
世界 Android Windows

スマホは『iPhone』のシェア率が高い日本、

パソコンは『Mac』ではなく『Windows』


日本でiPhoneが人気な理由。

Androidには無い機能があっても、

それが購入の決め手、決定打になるほどでもない。

無いと困ると言われそうな機能としては

以前Androidの方にありました。おサイフケータイや地図の精度など。

現在はそんな大差は無いと思うのですが。。。


決定的な違いがあるのは、アプリ開発に関すること。

戦国CAST開発記

理由が2つ。
  1. 戦国モノのドラマを見ていて役者が混同
  2. monacaの利用制限
まず1つ目。
大河ドラマ「真田丸」、「直虎」を見て
それ以前に見た「信長協奏曲」なども含め、
特に三英傑と言われる信長、秀吉、家康は
それぞれの作品で誰が演じたのか混同してしまったこと。
あの作品ではあの人で、この作品は・・・と。

まず2つ目のmonacaに関して。
ずっと使わせていただいておりましたが、
スマホアプリ開発ツール「monaca」
無料で使える枠が年々狭くなってきたこと。
2018年6月1日より利用規約が変更され商用利用NGに。
個人での利用でアプリ内広告は・・・
使えるにしてもやはり何かと制限されているので
これからはVisualStudioで作っていこうかなと。

monacaアプリへの広告掲載とCordova問題

公開中の全アプリで抱えていた2つの問題。

  1. Cordovaにセキュリティの脆弱性
  2. アプリの広告掲載

まずCordova問題に関してはリビルドして再アップするだけ。
ただし、2016年5月8日まで!?

次に広告問題。
「appC cloud」との連携サービスを停止。
よって、別の広告サービスに乗り換える必要が発生。

前者は明らかに期限が決まっていましたし、
後者もappC連携停止後もそのまま公開しているわけにもいかず。



と言いつつも、期限が過ぎてしまいました。。。
どちらも、アプリ的には何も変化が無く
利用者側から見たら、ただバージョンコードが上がるだけ。
それは避けようと、アプリ的に何か機能追加をしつつ
広告サービスの検討に手間取りました。
検討した結果、Ad Generation(アドジェネ)に決めました。
その設置方法はこちらを参考に『Monaca導入ガイド

すぐに表示されず。
表示されているページの裏に回りこんでいる?
OnsenUIとの相性!?
nendの時同様に対処が必要かと思い、似たようなことを試しましたが、その辺は不要。
単純に、index.htmlのbodyタグ内にアドジェネのコードを設置。
アドジェネ側の設定で、広告枠設置位置をオーバーレイ。
これで何の問題も無く広告が表示されました。

アプリで使用中の Apache Cordova のバージョンにセキュリティの脆弱性があります。

Googleデベロッパーコンソールにて(2016/02/09)

すべてのアプリの公開・非公開ステータス横に
危険マークが表示されました。



セキュリティ アラート
アプリで使用中の Apache Cordova のバージョンにセキュリティの脆弱性があります。詳しくは、Google ヘルプセンターのこちらの記事でアプリの修正期限などをご確認ください。

以前もCordovaのバージョンによりアラートが発生。
期限が設定されており、
そのまま放置していると、アプリ公開がブロックされるという警告。

さて今回は、
2016年5月8日までに修正しなければなりません。


MonacaがCordova 5.2に対応したのが昨年11月。
MonacaのCordova 5対応に関する注意点

追々修正することになるだろうと思っておりました。

リビルドだけで問題解決ですが、
アプリを使う側としては
「何が変わったの?」なので
機能追加などのついでに更新しようと。


最近公開したアプリ(リアたん)に関しては、
新しく作成したプロジェクトのため、
Cordova5.2になっているはずですが、あえて4
4で作ってあった何も無いプロジェクトを利用。
と言うのも、
・ダウングレードができない。
・Android 4.0以降をサポート。

Googleデベロッパーコンソールの統計情報を見ても
少ないですがAndroid 2.3.3が。
手元にも1台検証用ですが生存中。


しかし、先日からアラートとなり
そのままでは公開がブロックされ、
全ユーザーに影響がでてしまう。
順次リビルドせねば。。。

セキュリティ上の脆弱性が複数含まれているOpenSSL

この通知は、このアプリが、ユーザーに対するセキュリティ上の
脆弱性が複数含まれているOpenSSLのバージョンに対して
静的にリンクしていることをお知らせするためのものです。

以前も似たようなアラートが発生しましたが、
特に手を加える必要は無かったはず。
ところが、今回は
期限は2015/07/07です”と明記されており、
そのままの状態では、アプリを消されるかのような警告


デジスロのみこの警告を受けています。
警告を受けていない他のアプリとの差はCordovaのバージョン。
monacaからもCordovaのアップデートをとアナウンスがあったような。
とりあえず、Cordovaのバージョンを3.5.1から4.1.0に。


アンドロイダー公認デベロッパー、公認アンドロイドアプリ

アプリを紹介するサイト『アンドロイダー
アプリ開発者(デベロッパー)も参加できて
作ったアプリを紹介していただける。

私もデベロッパーとして仲間に入れてもらいましょう。
出来立てホヤホヤのアプリを2つ携えて申請(2014/12/29)
申請が年末だったということもあり予想はしていましたが、
意外と時間がかかったというお話。
さらに、公認されるまでの審査が本当にしっかりされていたというお話。

Cordova Media API の不具合

デジスロ』、『サウンドエフェクトキーホルダー
どちらも効果音を再生するために
PhoneGap の Media API を使用。


monacaの開発Tipsほぼそのまま採用し、
Cordovaプラグインの管理でMediaを有効。

問題なく再生できる。
しかし、あるタイミングで再生不能に陥ることがある。
アプリを起動してから30種類以上の音を再生した時、
31種類目の音が再生不能になる。