Android Studio 增加了@androidx.annotation 和@android.support.annotation 问题 [英] Android Studio adds both @androidx.annotation and @android.support.annotation problem
问题描述
我将 Android Studio 更新到了 3.2.0 版.
当我接受来自建议列表或alt + enter的任何更改时.
- 问题是
@androidx.annotation
自动创建的. - 因此建议方法有两个注释
@androidx.annotation.Nullable
和android.support.annotation.Nullable
. - 我不想手动删除这个不需要的建议,那么我该怎么做才能只有
android.support.annotation
? - 另外
androidx.annotation
包没有添加到我的应用程序中.我不想添加I updated Android Studio to version 3.2.0.
When I accept any change from list of suggestion or alt + enter.
- Problem is
@androidx.annotation
auto created. - Thus suggestions method have two annotation
@androidx.annotation.Nullable
andandroid.support.annotation.Nullable
. - I don't want to manually remove this unwanted suggestion, so what can I do to have only
android.support.annotation
? - Also
androidx.annotation
package is not added in my app. and I don't want to add androidx.annotation.
See example.
import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; public class LoginActivity extends AppCompatActivity { @Override public void onCreate(@androidx.annotation.Nullable @Nullable Bundle savedInstanceState, @androidx.annotation.Nullable @Nullable PersistableBundle persistentState) { super.onCreate(savedInstanceState, persistentState); } }
Is there some IDE setting to remove auto generation of
androidx.annotation
?Update
I could get rid of this problem with migrating to
androidx
(from official doc), but I am not able to migrate all projects toandroidx
currently. So need a solution.解决方案AndroidX is the new extension libraries for backward compatibility support. In future new feature backward compatibility support will be addressed in AnddroidX. As stated in this blog https://android-developers.googleblog.com/2018/05/hello-world-androidx.html
The stable release of 28.0.0 will be the final feature release packaged as >android.support. All subsequent feature releases will only be made available as >androidx-packaged artifacts.
https://developer.android.com/topic/libraries/support-library/revisions
Revision 28.0.0 Production (September 21, 2018)
This is the stable release of Support Library 28.0.0 and is suitable for use >in production. This will be the last feature release under the >android.support packaging, and developers are encouraged to migrate to >AndroidX.
Moving your app from android.support to androidx-packaged dependencies
Refer to this link, https://developer.android.com/jetpack/androidx/migrate
If you depend on a library that references the older Support Library, Android Studio will update that library to reference androidx instead via dependency translation. Dependency translation is automatically applied by the Android Gradle Plugin 3.2.0-alpha14, which rewrites bytecode and resources of JAR and AAR dependencies (and transitive dependencies) to reference the new androidx-packaged classes and artifacts. We will also provide a standalone translation tool as a JAR.
So, In Step 1(dependency translation): In your gradle.properties file set the android.useAndroidX flag to true and the android.enableJetifier flag to true.
android.useAndroidX=true android.enableJetifier=true
in Step 2(source refactoring): With Android Studio 3.2 and higher, you can quickly migrate an existing project to use AndroidX by selecting Refactor > Migrate to AndroidX from the menu bar.
这篇关于Android Studio 增加了@androidx.annotation 和@android.support.annotation 问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
- Problem is