見出し画像

Android SDKの構成をまなぶ SDK ADV IDE APK aab

Googleは、Androidソフトウェア開発キット(SDK)を用いて「Kotlin、Java、C++言語を使ってAndroidアプリを書くことができる」と述べているが、他の言語を使うことも可能である。Go、JavaScript、C、C++、アセンブリなど、Java以外の仮想マシン(JVM)言語はすべて、JVM言語コードの助けが必要です。

https://en.wikipedia.org/wiki/Android_software_development

Androidソフトウェア開発キット(SDK)には、包括的な開発ツールのセットが含まれています。Android SDKプラットフォームツールは、adbやfastbootなどのコマンドラインツールで構成され、SDK全体のサブセットとして別途ダウンロード可能です。C/C++で書かれたコードは、Android Native Development Kit (NDK) を使ってARMやx86のネイティブコード(またはそれらの64ビット版)にコンパイルすることができます。

だいたいこんな感じ

携帯用に縦長にしてしまったが、本体にSDKがあり、google からDLする端末のデータをsystem imageというフォルダに格納して、AVDがそれを使ってAPKの動作確認をする。APKはZIPで、ビルド作業にはGradleを使うが、これはgroovyで書いてgroovyはjavaと関連があって、Android Studio(IDE)もSDKもjarが使われている部分は大半javaの世話になっている。携帯にはapkを渡してやればあとはなんとかしてくれる。

拡張子がapk[1]のAndroidパッケージは、Androidオペレーティングシステム、および他の多くのAndroidベースのオペレーティングシステムで、モバイルアプリ、モバイルゲーム、ミドルウェアの配布とインストールに使用されるファイル形式です。JavaまたはKotlinで記述することができる。
APKファイルは、Android App Bundlesから生成および署名することができます。

https://en.wikipedia.org/wiki/Apk_(file_format)

APKは、Microsoft WindowsのAPPX、HarmonyOSのHAPの.app、Debian系OSのDebianパッケージなど、他のソフトウェアパッケージと類似している。APKファイルを作成するには、まずAndroid Studio[3]やVisual Studioなどのツールを使ってAndroid用のプログラムをコンパイルし、そのすべての部分を1つのコンテナファイルにパッケージングします。APKファイルには、プログラムのコード(.dexファイルなど)、リソース、アセット、証明書、マニフェストファイルのすべてが含まれています。多くのファイル形式と同様に、APK ファイルは必要な任意の名前を持つことができますが、そのようなファイルとして認識されるために、ファイル名がファイル拡張子で終わることが要求される場合があります

https://en.wikipedia.org/wiki/Apk_(file_format)

Android App Bundleは、Androidアプリケーションの公開ファイル形式です。App Bundleにはアプリケーションのコンパイルコードとリソースを含める必要があり、これによりAPKファイルの署名と生成をアプリストアに先送りすることができ、アプリの初期ダウンロードサイズを削減できる[1]。このフォーマットに用いられるファイル拡張子は「.aab」[2]である。
このフォーマットは、2021年8月以降、すべての新しいGoogle Playアプリに要求されている

https://en.wikipedia.org/wiki/Android_App_Bundle


お願い致します