問題タブ [android-min-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android がリリースされました - フレームワークのバージョンはサポートされていません
これは Google Play での私の最初のリリースです。ご容赦ください。非常に単純な質問かもしれません。数週間前にアプリのバージョンをリリースしましたが、テスターに問題はありませんでした。
現在、新しいバージョンでは、彼の携帯電話がアプリのバージョンと互換性がないというメッセージが表示されるため、これ以上テストすることはできません。アプリに大きな変更を加えたとは思いません。UI を少し改善し、minSdk を 28 から 26 に下げました (28 に戻そうとしましたが、何も修正されませんでした)。
Googleコンソールは、私のアプリはフレームワークバージョン(2,616デバイス!)28以降をサポートしていないと言っていますが、「minSdkVersion 26」で何をすべきかをしました。
どんな助けでも本当に感謝します!
私のアプリの詳細は次のとおりです。
グラドル
そして、ここに私のマニフェストがあります:
android - アプリのインストール中に minSdkVersion がデバイスの API レベル エラーよりも新しい
Apiレベル30のAndroidスマートフォンに、ターゲットSDKバージョンのAndroid Sを使用してAndroidアプリをインストールしています。アプリのデフォルトの構成設定は次のとおりです
しかし、Api レベル 30 のエミュレーターに apk をインストールすると、次のようなエラーが発生します。
これを解決するには?それを機能させるために変更する必要があるのはどれですか?
android - minSdkVersion を 16 から 26 に変更すると、リリース APK のサイズが 17 から 39 MB に増加しました
常に ~17 MB のリリース APK ファイルを生成する、比較的小さくて単純なアプリケーションがあります。しばらく前に、APK のサイズが (このアプリの場合) 39 MB にまで増加していることに気付きました。その原因となった変更を追跡したところ、minSdkVersion
16 から 26 への変更のみで他の変更を加えていない同じコードベースが APK の増加につながることがわかりました。
奇妙なことは、APK を解凍すると、解凍されたディレクトリがディスク上で最大 40 MB を占めることです。いくつかの変更がありますが、それらはすべて非常に小さなファイルに含まれており、26 バージョンでは一部のレイアウトが欠落しており、無視できます。40 MB の最大の部分は *.so ライブラリを含む lib フォルダーで、合計 37 MB になりますが、両方の APK バージョンで同じです。(アプリケーションは でビルドされた Flutter アプリケーションですflutter build apk --release
。)
私は実際にはminSdkVersion
を 26 にしたくも必要もありません。この変更を元に戻しますが、次の点について非常に興味があります。
- これら 2 つの s の間で劇的なサイズの増加を引き起こした Android の途中で何が変更された
minSdkVersion
のでしょうか? - APK を解凍したとき、どのようにしてほぼ同じサイズになるのでしょうか? ビルド
minSdkVersion
16 のほうが圧縮率がよかったのではないでしょうか? - 展開されたディレクトリのサイズがほぼ同じである場合、サイズの増加は実際にエンド ユーザーにとって問題になりますか? 17 MB と 37 MB をダウンロードする必要がありますか? 26歳向けのアプリ ビルドは
minSdkVersion
、デバイス上でより多くのスペースを占有しますか?
android - Android API LEVEL に従って、armeabi-v7a と arm64-v8a を強制的に使用できますか?
armeabi-v7a と arm64-v8a の 2 つのアーキテクチャに NDK21d を使用してネイティブ ライブラリを構築しています。
minsdkversion が 21 に設定されている APK 内に両方のライブラリ .so (32 と 64) を埋め込んでいます。
しかし、API レベル < 23 (21 および 22 = Android 5.x、Lollipop など) の場合、C 関数 __register_atfork が arm64 ライブラリで定義されていないという問題に直面しています。
そのため、回避策として、たとえ 64 ビットをサポートしていても、Lollipop デバイスには armeabi-v7a の使用を強制したいと考えています。
それは可能ですか?build.gradle で?
前もって感謝します