Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

令和最新版Android Studioで化石デバイス向けアプリを作る

Avatar for Sora Arakawa Sora Arakawa
December 06, 2025

令和最新版Android Studioで化石デバイス向けアプリを作る

Kernel/VM探検隊@北陸 Part 8

Avatar for Sora Arakawa

Sora Arakawa

December 06, 2025
Tweet

More Decks by Sora Arakawa

Other Decks in Programming

Transcript

  1. 荒川 奏良 (Sora Arakawa, arkw) 令和最新版Android Studioで 化石デバイス向けアプリを作る 2025/12/06 Kernel/VM探検隊@北陸

    Part 8 ITビジネスプラザ武蔵 (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/
  2. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ 自己紹介 •

    荒川 奏良 (Sora Arakawa, arkw) • 静岡大学 情報学部 行動情報学科 卒 • おもんない会社でおもんない仕事 • 愛知県岡崎市出身→三重県四日市市在住 • 趣味 : プログラミング、デザイン、移動など • 最近は同人誌即売会によく出ています • 次は年末のコミックマーケット107 (南l45b) • https://arkw.net/ • Twitter (現X) : @arkw0 • Misskey (ActivityPub) : @[email protected] X (Twitter) / Misskey Discord
  3. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ Androidとは? •

    Google開発のモバイル向けOS • バージョン1.0のリリースから17年 • ホームボタンが画面内に移って14年 • 今とほぼ同じUIに変わって11年 • (時間の経過に) ブルっちゃうよ… • 後方互換性、どうなの? • 有名どころで言えばWindows • Android/iOSアプリにはシステムバージョンの最小要件が存在 • サポート外でも動くことが多いWindowsソフトウェアと違い、OSレベルでハネられる • PCと違い、スマートフォンやタブレットはOSを強制的に書き換えられない • ソフトウェア更新が提供されなくなったら古いバージョンを擦るしか… • よく分からないメーカーの変な製品は一度もアップデートが来ないことも多い
  4. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル • SDKのAPIリビジョンを一意に識別する整数値 • Androidのマイナーバージョンアップで上がることも (5.0→5.1とか) • バージョン1=APIレベル1からスタート、最新のAndroid 16では36 • SwarmskyToX • Misskeyに投稿されたノートをXへ転送するアプリ • 死亡したSwarm自動ツイート機能の代替品として開発 • 2023年10月リリース、最新版は今年6月 • 直近3バージョン (14~16) で約8割のシェア • 直近6バージョン (11~16) ではほぼ100% • 比較的パワーユーザ向けアプリな点に留意 • とは言え、この辺をサポートしておけば基本的に問題無い
  5. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    主なアプリのAndroid要件 • 2025/11/30にGoogle Playストアから取得 X (旧Twitter) 9 ChatGPT 7.0 pixiv 8.0 メルカリ 8.0 PayPay 9 ウマ娘 プリティーダービー 7.0 学園アイドルマスター 10 アイドルマスター シンデレラガールズ スターライトステージ 8.0 ブルーアーカイブ 7.0
  6. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    開発環境Android Studioでは3つのAPIレベルを指定できる • minSdkだけNew Project画面で指定可能 • それ以外はプロジェクト作成後にProject Structure→Modules→Default Configま たはapp/build.gradleから対応 • compileSdk • ビルドツールGradleがアプリをコンパイルする際に使うAPIレベル • targetSdk • アプリのテストに使用するAPIレベル • minSdk • アプリの実行に必要な最低限のAPIレベル • Playストアの「Android要件」と同じ
  7. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル24 (Android 7.0) • 年々個人開発者に厳しくなるGoogle Playストア • 2024年8月以降、targetSdkが要件に満たないアプリは公開/更新不可 • NHK時計アプリがサ終した理由はたぶんこれ • Android 14以降ではtargetSdk 24未満のアプリがインストールできない • minSdk 22のアプリがPlayストアでリジェクトされた • targetSdkとminSdkを同列に扱っている? • よってminSdk 24がPlayストアの審査を通せる最低ライン • Android Studioプロジェクト作成時の依存関係でビルド可能な最低ラインでもある
  8. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル24 (Android 7.0) • エラーを吐いた依存関係は古いバージョンに変更して解決 • 各ライブラリにもビルド可能なAPIレベルの上限/下限が設定されているため • Android SDKのバージョンを下げる手もあり (33=Android 13とか) • しばらくはエラー→Dependenciesのライブラリを1つ古いバージョンに設定→リ ビルド→エラー…でゴリ押し可能 ライブラリ名 デフォルト値 ALPS-FE activity 1.12.0 1.6.0 appcompat 1.7.1 1.6.1 constraintlayout 2.2.1 2.1.4 espresso-core 3.7.0 3.5.1 junit (androidTestImplementation) 1.3.0 1.1.5 junit (testImplementation) 4.13.2 4.13.2 material 1.13.0 1.5.0
  9. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル21 (Android 5.0) • これより古いとNew Project画面の一部アクティビティが選べなくなる • APIレベル16 (Android 4.1) • Android Studio 2025.1.4のNew Project→Minimum SDKで選べる最低ライン • 更に古いバージョンをターゲットとしたい時も強制的に選ばされる • app/build.gradleのminSdkを後から変更→リビルドで解決
  10. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル15 (Android 4.0) • エラー→Dependenciesのライブラリを1つ古いバージョンに設定→リビルド→エ ラー…のゴリ押しがいよいよ使えなくなる • ConstraintLayoutとjunit以外の依存関係は選べる中で一番古いバージョンでも Android 2.3のビルドに通らないためバッサリ削除 • androidTest/ExampleInstrumentedTest.javaがライブラリ不足でエラー… • テストケースの中身を消して解決、ヨシ! (ほんまか?)
  11. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル9 (Android 2.3) • これより古いとConstraintLayoutが使えなくなる • 仕方が無いので、Android 4.0→2.3と同様に依存関係から削る • Dependencyリストがjunitを残して全滅 • しかしビルドが通らない • 初期状態のactivity_main.xmlがConstraintLayoutで組まれているため • 2010年くらいの文献をベースにLinearLayoutで書き直す • 検索ワードは「Android Eclipse ◦◦」Android StudioやJavaでは最近の文献が出てしまう • アレ…今って、令和ですよね?
  12. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ APIレベルの壁 •

    APIレベル8 (Android 2.2) • ここまで行けばAndroid 1.0から全て対応です。お疲れ様でした • もはや動作確認用の実機を調達できない • android-x86-2.2-generic.isoと宅内ウェブサーバを組み合わせてインストール • android-x86-1.6.isoではインストールしたアプリが起動できなかった
  13. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ まとめ •

    Android Studio 2025.1.4+GradleでAndroid 1~16、全てビルドできます • Android SDKの後方互換性が地味にスゴい • ただしAndroid 10未満が産廃なことは変わらず… • 結局のところアップデートとストアアプリが入らない世代のデバイスは厳しい • Windows PCと違い、OSの強制書き換えやSDカード起動もできない • 何とかなりません? 無理ですか、そうですか…
  14. (c) 2025 Sora Arakawa all rights reserved. https://arkw.net/ 宣伝 •

    技術書典19 新刊「イロイロ・アンドロイド!!」 • 元々のハード/ソフトを破壊しない範囲で、スマートフォンなどAndroidデバイス を限界まで活用する方法を紹介 • 表紙イラストはXで最近人気のまほろさん (@maho__ron1) • B5サイズ/表紙のみカラー/本文102Pで500円 • 次のリアルイベは冬コミ。BOOTHにも出品予定 • 本日も数冊持ち込んでいます。お求めの方は荒川まで