When migrating a project or switching between branches which are and aren't migrated, Android Studio cannot build projects because it cannot find the android.support.design.widget.Snackbar
package. Support/Design packages are removed but the migration table does not list the correct new package for this component.
问题:
回答1:
This took a long time to resolve, as until your project successfully builds, autocomplete will not function to lookup packages.
The correct package to use is:
com.google.android.material.snackbar.Snackbar
It is also important to remember to change this on the XML tags as well as the imports if the migration has not worked successfully.
回答2:
Old build artifact com.android.support:design
now solves in com.google.android.material:material:1.0.0
for AndroidX build artifact.
回答3:
Add implementation "com.google.android.material:material:1.1.0"
to your app-level build.gradle
.
Also, ensure that your project is set up to migrate old packages to Androidx by including this in your gradle.properties
file:
android.useAndroidX=true
android.enableJetifier=true
回答4:
Import
com.google.android.material.snackbar.Snackbar;
instead of
android.support.design.widget.Snackbar;
if you shifted to androidx and AS couldn't find the package anymore.
回答5:
Updating to Anko version 0.10.8 will resolve this, it will tell you that snackbar(view, int) is now deprecated, instead of it you will use view.snackbar(int: Message)