パフォーマンスを改善
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
ユーザーはアプリの起動からアプリ エクスペリエンス全体を通して、応答性の高さとスピードをアプリに求めています。アプリのパフォーマンスの問題を検査することによって、問題を解決しアプリのパフォーマンスを改善できます。
Android には、最も重要な本番環境でアプリのパフォーマンスを継続的に改善するためのツールとライブラリがいくつか用意されています。
ベースライン プロファイル
ベースライン プロファイルをアプリまたはライブラリに実装すると、最も効率的な方法でパフォーマンスを改善できます。これにより、アプリ起動時間の大幅な短縮、レンダリングの高速化、エンドユーザーのパフォーマンスの改善を実現できます。詳細については、ベースライン プロファイルをご覧ください。
起動プロファイル
起動プロファイルは試験運用版の機能で、ベースライン プロファイルと似ていますが、適用する方式が異なり、違ったメリットがあります。ベースライン プロファイルはデバイスにアプリをインストールする際にパフォーマンスを最適化するのに対して、起動プロファイルはコンパイル時に適用されます。これはよく使用されるクラスを DEX ファイル内にグループ化する際のヒントを R8 圧縮ツールに与えます。これにより、アプリ起動時のページ フォールトが減少し、起動時間を短縮できます。詳細については、DEX レイアウトの最適化と起動プロファイルをご覧ください。
App Startup ライブラリ
App Startup ライブラリを使用すると、アプリの起動エクスペリエンスをさらに最適化できます。ライブラリ デベロッパーとアプリ デベロッパーのどちらも、App Startup ライブラリを使用して起動シーケンスを簡素化し、起動操作を最適化できます。
低 RAM デバイス向けに最適化する
パフォーマンスの改善は土台から始まります。エントリレベルのデバイス向けに最適化することで、すべてのデバイス カテゴリでのパフォーマンスを向上できます。メモリの制約があるデバイスを使用している場合、アプリの起動レイテンシ、アプリケーション応答なし(ANR)、アプリのクラッシュなどの問題が発生する可能性が高くなります。この市場セグメントを念頭に置いてアプリの開発、テスト、ベンチマークを行うことで、アプリをビルドする高性能な基盤を構築できます。
Android(Go バージョン)は Android プラットフォーム OS の一つの構成で、低 RAM デバイス向けに最適化されたエクスペリエンスを提供します。エントリレベルのデバイスの安定性とパフォーマンスの向上については、Android(Go バージョン)向けに最適化するをご覧ください。
よくある問題を解決する
使用可能なツールやライブラリではパフォーマンスの問題を解決できない場合は、次のいずれかのカテゴリの一般的な問題とその解決方法を確認することをおすすめします。
参考情報
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-27 UTC。"],[],[],null,["# Improve performance\n\nUsers expect apps to be responsive and fast, from app startup and throughout the\nentire app experience. After you\n[inspect](/topic/performance/inspecting-overview) your app for performance\nproblems, you can fix any issues and improve your app's performance.\n\nTools and libraries\n-------------------\n\nAndroid provides multiple tools and libraries to continually improve the\nperformance of your app in production, where it matters the most.\n\n### Baseline Profiles\n\nImplement Baseline Profiles into your app or library for the most efficient way\nto improve performance. It can significantly optimize app startup time, reduce\nslow rendering, and improve performance for end users. To learn more, see\n[Baseline Profiles](/topic/performance/baselineprofiles).\n\n### Startup profiles\n\nStartup profiles is an experimental feature that is similar to Baseline\nProfiles, but is applied differently and has distinct benefits. Whereas a\nBaseline Profile optimizes performance as the app is installed on a device, a\nstartup profile is applied at compile-time. It gives the R8 shrinker hints to\ngroup commonly used classes together within the DEX file. This can reduce page\nfaults during app startup, and therefore improve startup times. To learn more,\nsee [DEX layout optimizations and startup\nprofiles](/topic/performance/baselineprofiles/dex-layout-optimizations).\n\n### App Startup library\n\nThe [App Startup library](/topic/libraries/app-startup) lets you further\noptimize the app startup experience. Both library developers and app developers\ncan use the App Startup library to streamline startup sequences and optimize\nstartup operations.\n\nOptimize for low-RAM devices\n----------------------------\n\nPerformance improvements begin from the ground-up. By optimizing for entry-level\ndevices, you can improve efficiency across all device categories. Users are more\nlikely to encounter issues such as app startup latency, application not\nresponding (ANRs), or app crashes when using memory-constrained devices.\nDevelop, test, and benchmark your app with this market segment in mind to create\na performant foundation for your app to build upon.\n\n[Android (Go edition)](/guide/topics/androidgo) is a configuration of the\nAndroid platform OS, which provides an optimized experience for low-RAM devices.\nTo learn more about improving stability and performance for entry-level devices,\nsee [Optimize for Android (Go edition)](/guide/topics/androidgo/optimize).\n\nSolve common problems\n---------------------\n\nIf the available tools or libraries don't resolve your performance issues, we\nrecommend checking for common problems and solutions in any of these categories:\n\n- [App startup](/topic/performance/vitals/launch-time)\n- [Slow rendering](/training/articles/perf-anr)\n- [Memory](/topic/performance/memory-overview)\n- [Battery and power](/training/monitoring-device-state/doze-standby)\n- [App size](/topic/performance/reduce-apk-size)\n\nAdditional resources\n--------------------\n\n- [Background work overview](/guide/background)\n- [Performance class](/topic/performance/performance-class)\n- [App Standby Buckets](/topic/performance/appstandby)\n- [App hibernation](/topic/performance/app-hibernation)"]]