facebook twitter hatena line email

Android/非推奨コード

提供: 初心者エンジニアの簡易メモ
2018年8月23日 (木) 17:32時点におけるAdmin (トーク | 投稿記録)による版 (非推奨コードを特定クラスのみ非表示とする)

移動: 案内検索

非推奨のコードを可視化する

build.gradle

allprojects {
  gradle.projectsEvaluated {
    tasks.withType(JavaCompile) {
      options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
    }
  }
}

build/clear後 buildするとコンソールに非推奨コードが表示される

参考:https://qiita.com/nagasakulllo/items/48764c68e6b922c74f67

非推奨コードを特定クラスのみ非表示とする

クラスかメソッドの頭に以下アノテーションを付ける

@SuppressWarnings("deprecation")

webview系の非推奨コード

android/webview/非推奨コード [ショートカット]

Android7.0以降getConfiguration().localeは非推奨

Locale locale = AppStatic.getLocale(context);
@SuppressWarnings("deprecation")
public static Locale getLocale(Context context) {
   Locale locale;
   if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
       return context.getResources().getConfiguration().getLocales().get(0);
   } else {
     return context.getResources().getConfiguration().locale;
   }
 }

参考:https://stackoverflow.com/questions/38267213/how-to-get-the-current-locale-api-level-24

expected resource of type id ensures that resource ids passed to apis are of the right type警告

viewのresourceIdを直接入力すると出るエラーなのでView.generateViewId()にする。ただしbuildSDKLevel17以上から

cannot resolve symbol警告

@paramの変数や@seeのクラスが間違っているのでその部分を修正すればよい。

@paramであれば変数名を記載するようにし、@seeであればその変数のクラス名を書いてあげれば良い。

value must be same parameter are required to in a particular警告

変数に型の範囲外の数字を入れてる