「開発者モードを設定・解除する」を更新しました

Android 13 が搭載された 5G スマホ、モトローラ g53j 5G を入手しました。

機種変更に伴うアプリの再設定など」に、Android 端末から Android 端末へのアプリやデータの移転(機種変更)の操作などを記録しています。また、今後各アプリについてのログイン状況や設定などを追記していく予定です。

そしてまずはアプリ開発者として、「開発者向けオプション」を有効にして USB 接続した PC からアプリをテストできるようにしたりする、開発者モード設定を行いました。「開発者モードを設定・解除する」に Android 13 での様子を追記しています。

Android アプリのターゲットレベル更新

2020 年 8 月 27 日の Google Play からのメール「App bundle improvements, new in-app review API, and more」によると、2020 年 11 月 2 日以降に更新があるアプリは、ウェア OS を除き、ターゲットを Android 10 の API level 29 以上に設定しなくてはならないそうです。

また、アプリのリリースに関する Play Academy が更新されたとの記述が最後にあります。

その他にもアプリ内サブスクリプションを提供している場合などについて書かれていましたが、私は関係ないので省略です。

Android アプリで動的にパーミッションを取得する

Android 6 より前では、AndroidManifest.xml で外部ストレージの権限を記録しただけで、 Download フォルダなど、パブリックなフォルダにアクセス可能となっていました。でも今は、アプリの実行時に権限を問い合わせ、ユーザーに操作を求めなくてはいけません。

ネイティブアプリで実行時に権限を得る方法に苦労しましたが、JNI で Java コードを呼び出すことにより、標準ダイアログによる問い合わせ、「今後表示しない」による不許可や、一時的な不許可、そしてユーザー操作による問い合わせの復活など、ひととおり確認できましたので、まとめています。

動的にパーミッションを取得する」をご覧ください。

更新された Google Play デベロッパー販売 / 配布契約を確認

Google Play 開発者に向けて 2020 年 6 月 13 日に届いた、「Review updated Google Play Developer Distribution Agreement」メールについて、どのような内容が書かれているかを確認すると同時に、記録しました。

主には Google の権利を弱めて開発者と対等ですよ、というアピール的なものに思えました。受け入れるしかありませんので、特にアクションは必要ありません。

詳細は「更新された DDA の確認メール」をご覧ください。

Google Play Console の新規約を受け入れる

Android デベロッパー登録していると、Google から定期的にメールが届きます。昨日、2020 年 5 月 5 日に届いたメールには、新しいサービス規約について書かれており、タイトルに「Action required」と書かれていました。

どうやら、新しいサービス規約を受け入れなければ、Play Consoleを利用できなくなる、すなわち開発したアプリをアップロードできなくなると思えます。

しかも期限は比較的短い、2020 年 5 月末までですから、注意が必要です。

Play Console の新規約を受け入れる」に、詳しく書いています。

Java クラス関数の作成と呼び出し

Win10 Pro + Visual Studio Community 2019 で、Android Native-Activity アプリに Java クラスを定義し、C/C++ 側からロードして呼び出し、Java で書いた、プレーンテキストをクリップボードにコピーする関数を呼び出す手順をまとめました。

ちょっとした呼び出しでも手間がかかりますが、多くの手続きは共通で利用できる部分となっていますので、ここではまとめていませんが、C/C++ のクラス・関数化できる部分が多そうです。

Java クラス関数の作成と呼び出し」です。

Win10 64bit VS2015 で Android App のビルドを行えるようにする

新しい Windows 10 Pro 64bit に、Visual Studio 2015 をインストールし、クロスプラットフォーム開発で Android ネイティブアプリをビルドするための環境を作成する手順を、まとめなおしました。

初期状態では Visual Studio から Android SDK Manager すら起動できませんでした。Java の JDK をインストールし、パスを設定し、Android SDK Manager が起動できるようにして、SDK の更新までを行っています。

Android App ビルド環境の構築(Win10/VS2015/Java 編)」です。

次は Android NDK、Apache Ant、そして Clang を更新するつもりです。

JNIを使ってブラウザを起動する

ピュアなネイティブアプリ(NativeActivity)から、ボタンのタッチ等によりウェブサイトを開くとき、WebViewコントロールが(少なくとも今の理解では)使えないので、ブラウザを起動して閲覧してもらいます。

(少なくとも今の理解では)ピュアなネイティブアプリからJavaのコードを呼び出せないので、JNIを利用して、実現しました。

詳細はこちらです。