問題タブ [android-api-levels]
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 プラットフォームのバージョン
ここのAndroid ダッシュボードのように、国ごとにプラットフォームのバージョンを取得する方法はありますか?
ドイツのみを対象とするプロジェクトを開始する予定です。ダッシュボードでグローバルな値が取得されるため、その国の最も低い API バージョンを知りたいと考えています。
android - LauncherActivityInfo の適切な代替品を見つける
API レベル 21 では、LauncherActivityInfo が導入されました。
現在、 getApplicationInfo() 、 getBadgedIcon() 、 getLabel() 、および getIcon()を使用するプログラムを実装する必要があります。
stackoverflow と google で検索しましたが、代替品として適切なものが見つからないようです。API レベル 19 をサポートする必要があります。このクラスを使用することはできません....誰か提案はありますか?
クラスへのリンク
android - Android: サポートされていない Android バージョンのアプリをインストールできる
Android 2.3 (API レベル 9) デバイスのサポートを終了するのは、ほとんどのユーザーが携帯電話で新しい Android バージョンを使用しているためです。SDK の最小バージョンを API レベル 14 に更新しました。
ただし、Android 2.3 デバイスに手動で (ストアではなく) アプリをインストールすることはできます。これは予期された動作ですか、それとも何か間違ったことをしていますか? 他の場所で答えを見つけることができませんでした。
もう 1 つの奇妙な問題は、Lint が正しい API レベルを検出しないことです。
これにより、次の警告が表示されます: Call requires api level 11 (current min is 9)。ただし、現在の最小値は 14 です。これは、私が何か間違ったことをしたことを示しています。プロジェクトのクリーニングと再構築を試み、Android Studio を再起動しました。それはすべてうまくいきませんでした。
誰でも私を助けることができますか?
編集
Sufiansのコメントに基づいて、gradleファイルをいじり始め、次の解決策にたどり着きました。しかし、まだいくつかの疑問が残っています。私のプロジェクト構造は次のようになります。
- android.gradle (SDK バージョンを含むトップレベルのビルド ファイル)
- メイン モジュール (他のモジュールのベース コードを含む)
- build.gradle (「../android.gradle」から適用)
- サブモジュール A (モジュール固有の変更)
- build.gradle (メイン モジュールに依存しています)
- サブモジュール B (モジュール固有の変更)
- build.gradle (メイン モジュールに依存しています)
android.gradle
SDK バージョンを含むトップレベルのビルド ファイルがあります。私のモジュールには、ビルドファイルが含まれていますapply from: '../android.gradle'
。minSdkVersion をメイン モジュールに直接配置すると、警告が消えます。それはそうあるべきですか?または、すべてのサブモジュールに minSdkVersion を設定する必要がありますか? または、SDK のバージョンがファイル内にとどまるようにする別の方法はありandroid.gradle
ますか?
android - Android API レベル - gradle コンパイル - 実行されますか?
build.gradle ファイルで、テスト目的で Android プロジェクトの API レベルを 22 から 7 に変更しました。
Gradle はプロジェクトをビルドするのに問題はなく、私の (Android 5.1 OS) でも問題なく動作します。
ビルドの成功は、アプリが下位の OS (API レベル 7 まで) で問題なく動作することを示していますか? そうでない場合 - どの API が自分のアプリケーションに最も適していないかを確認するにはどうすればよいですか?
android - Android API レベルの不一致で NoSuchMethodError 実行時エラーの代わりにコンパイル時エラーを取得するにはどうすればよいですか?
と を備えた Android Xamarin アプリケーションがandroid:minSdkVersion="15"
ありandroid:targetSdkVersion="21"
ます。API 15 以上のものを使用している場合、IDE (xamarin スタジオ、ビジュアル スタジオ) とコンパイル プロセスは単に無視することが判明しましたが、これはここでは予期されない動作です。
たとえば、Path.addArc(float,float,float,float,float,float)
からのメソッドがAPI 21
あり、上記のマニフェスト設定でそれを使用できましたが、実行時エラーが発生しましNoSuchMethodError
た。
Path.addArc(RectF,float,float)
オーバーロードを使用する簡単な修正方法がありますAPI 1
が、私の質問は、代わりにコンパイル時エラーまたは実行時エラーを取得する方法についてです。
[アップデート]
基本的には、ターゲットのAndroidバージョンAPI 15
を持ちながら、(最小Androidバージョン)の下位互換性を維持したいと考えています。API 21
上記のいずれかの方法を使用しようとしているときに、IDE サポートを取得したいと考えていますAPI 15
。つまり、定義されている Android の最小バージョンには存在しないメソッドを使用しているという警告が必要なので、実行時のバージョン チェックを行ってください。
出来ますか?