「Android/androidx」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→"エラー: シンボルを見つけられません シンボル: クラス NonNull 場所: パッケージ androidx.annotation"エラーとなる場合) |
|||
(同じ利用者による、間の4版が非表示) | |||
行8: | 行8: | ||
-import android.support.annotation.NonNull; | -import android.support.annotation.NonNull; | ||
+import androidx.annotation.NonNull; | +import androidx.annotation.NonNull; | ||
+ | </pre> | ||
+ | |||
+ | Fragmentがあれば | ||
+ | <pre> | ||
+ | -import android.support.v4.app.Fragment; | ||
+ | +import androidx.fragment.app.Fragment; | ||
</pre> | </pre> | ||
行25: | 行31: | ||
org.gradle.jvmargs=-Xmx1536m | org.gradle.jvmargs=-Xmx1536m | ||
</pre> | </pre> | ||
+ | |||
+ | =="エラー: シンボルを見つけられません シンボル: クラス NonNull 場所: パッケージ androidx.annotation"エラーとなる場合== | ||
+ | build.gradle | ||
+ | 修正前 | ||
+ | <pre> | ||
+ | implementation 'com.android.support:appcompat-v7:28.0.0-rc01' | ||
+ | implementation 'com.android.support.constraint:constraint-layout:1.1.2' | ||
+ | </pre> | ||
+ | |||
+ | 修正後 | ||
+ | <pre> | ||
+ | implementation 'androidx.appcompat:appcompat:1.0.0' | ||
+ | implementation 'androidx.constraintlayout:constraintlayout:1.1.3' | ||
+ | androidTestImplementation 'androidx.test:runner:1.2.0' | ||
+ | androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' | ||
+ | </pre> | ||
+ | |||
+ | ==AppCompatActivityなどのメソッドがCannot Resolve Symbolのエラーで赤くなる不具合修正方法== | ||
+ | androidxとandroid.supportが競合している恐れがあるので、どちら一方に統一するとよい。 | ||
+ | |||
+ | android.supportを消し、androidxに統一すると実際に直った。 |
2020年10月26日 (月) 16:29時点における最新版
目次
- 1 supportからandroidxへ対応表
- 2 Program type already present: android.support.v4.app.INotificationSideChannelエラー
- 3 "エラー: パッケージandroid.support.annotationは存在しません"エラーの時
- 4 "エラー: シンボルを見つけられません シンボル: クラス NonNull 場所: パッケージ androidx.annotation"エラーとなる場合
- 5 AppCompatActivityなどのメソッドがCannot Resolve Symbolのエラーで赤くなる不具合修正方法
supportからandroidxへ対応表
https://developer.android.com/jetpack/androidx/migrate?hl=ja
例えばimportを以下のように更新
-import android.support.annotation.RequiresApi; +import androidx.annotation.RequiresApi; -import android.support.annotation.NonNull; +import androidx.annotation.NonNull;
Fragmentがあれば
-import android.support.v4.app.Fragment; +import androidx.fragment.app.Fragment;
Program type already present: android.support.v4.app.INotificationSideChannelエラー
プロジェクト直下のgradle.properties
android.enableJetifier=true android.useAndroidX=true
http://wiki.nonip.net/index.php?title=Android/androidx&action=edit
"エラー: パッケージandroid.support.annotationは存在しません"エラーの時
プロジェクト直下の gradle.properties のorg.gradle.jvmargsを変更
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 org.gradle.jvmargs=-Xmx1536m
"エラー: シンボルを見つけられません シンボル: クラス NonNull 場所: パッケージ androidx.annotation"エラーとなる場合
build.gradle 修正前
implementation 'com.android.support:appcompat-v7:28.0.0-rc01' implementation 'com.android.support.constraint:constraint-layout:1.1.2'
修正後
implementation 'androidx.appcompat:appcompat:1.0.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' androidTestImplementation 'androidx.test:runner:1.2.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
AppCompatActivityなどのメソッドがCannot Resolve Symbolのエラーで赤くなる不具合修正方法
androidxとandroid.supportが競合している恐れがあるので、どちら一方に統一するとよい。
android.supportを消し、androidxに統一すると実際に直った。