Подскажите почему крошиться приложение при нажатии на Drawer?
При нажатии на drawer от библиотеки makepenz крошиться приложение! Вот лог ошибок
2020-12-01 12:12:54.881 19413-19413/com.buratinoapps.facebookvideodownloader E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.buratinoapps.facebookvideodownloader, PID: 19413
java.lang.IllegalArgumentException: Invalid Layer Save Flag - only ALL_SAVE_FLAGS is allowed
at android.graphics.Canvas.checkValidSaveFlags(Canvas.java:378)
at android.graphics.Canvas.saveLayer(Canvas.java:455)
at com.mikepenz.materialdrawer.view.BezelImageView.onDraw(BezelImageView.java:213)
at android.view.View.draw(View.java:20234)
at android.view.View.updateDisplayListIfDirty(View.java:19109)
at android.view.View.draw(View.java:19962)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.updateDisplayListIfDirty(View.java:19100)
at android.view.View.draw(View.java:19962)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.updateDisplayListIfDirty(View.java:19100)
at android.view.View.draw(View.java:19962)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.updateDisplayListIfDirty(View.java:19100)
at android.view.View.draw(View.java:19962)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at androidx.recyclerview.widget.RecyclerView.drawChild(RecyclerView.java:4820)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20237)
at androidx.recyclerview.widget.RecyclerView.draw(RecyclerView.java:4219)
at android.view.View.updateDisplayListIfDirty(View.java:19109)
at android.view.View.draw(View.java:19962)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20237)
at com.mikepenz.materialize.view.ScrimInsetsRelativeLayout.draw(ScrimInsetsRelativeLayout.java:77)
at android.view.View.updateDisplayListIfDirty(View.java:19109)
at android.view.View.draw(View.java:19962)
at android.view.ViewGroup.drawChild(ViewGroup.java:4337)
at androidx.drawerlayout.widget.DrawerLayout.drawChild(DrawerLayout.java:1426)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4114)
at android.view.View.draw(View.java:20237)
at android.view.View.updateDisplayListIfDirty(View.java:19109)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4321)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4294)
at android.view.View.updateDisplayListIfDirty(View.java:19069)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:801)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:3416)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3193)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2562)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1532)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7419)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1092)
2020-12-01 12:12:54.881 19413-19413/com.buratinoapps.facebookvideodownloader E/AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:888)
at android.view.Choreographer.doFrame(Choreographer.java:819)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1078)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6810)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
Вот сам java код
ColorDrawable cd = new ColorDrawable(Constant.color);
headerResult = new AccountHeaderBuilder()
.withActivity(this)
.withHeaderBackground(cd)
.withSelectionListEnabledForSingleProfile(false)
.withAlternativeProfileHeaderSwitching(false)
.withCompactStyle(false)
.withDividerBelowHeader(false)
.withProfileImagesVisible(true)
.addProfiles(new ProfileDrawerItem().withIcon(R.mipmap.ic_launcher).withName(getResources().getString(R.string.app_name)).withEmail(getResources()
.getString(R.string.developer_email)))
.build();
resultDrawer = new DrawerBuilder()
.withActivity(this)
.withSelectedItem(-1)
.withFullscreen(true)
.withAccountHeader(headerResult)
.withActionBarDrawerToggle(true)
.withCloseOnClick(true)
.withMultiSelect(false)
.withTranslucentStatusBar(true)
.withToolbar(mToolbar)
.addDrawerItems(
new PrimaryDrawerItem().withSelectable(false).withName(R.string.app_name),
new PrimaryDrawerItem().withSelectable(false).withName("Gallery").withIcon(R.drawable.ic_home_black_24dp).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
Intent intent = new Intent(MainActivity.this, GalleryActivity.class);
startActivity(intent);
return false;
}
}),
new PrimaryDrawerItem().withSelectable(false).withName("Recommend to Friends").withIcon(R.drawable.ic_share_black_24dp).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
final String shareappPackageName = getPackageName();
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Check out " +getResources().getString(R.string.app_name) + " App at: https://play.google.com/store/apps/details?id=" + shareappPackageName);
sendIntent.setType("text/plain");
startActivity(sendIntent);
return false;
}
}),
new PrimaryDrawerItem().withSelectable(false).withName("Rate Us").withIcon(R.drawable.ic_thumb_up_black_24dp).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
final String appPackageName = getPackageName();
try {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName)));
} catch (ActivityNotFoundException anfe) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + appPackageName)));
}
return false;
}
}),
new PrimaryDrawerItem().withSelectable(false).withName("Settings").withIcon(R.drawable.ic_settings_applications_black_24dp).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
Intent intent = new Intent(MainActivity.this, SettingsActivity.class);
startActivity(intent);
return false;
}
}),
new PrimaryDrawerItem().withSelectable(false).withName("Feedback").withIcon(R.drawable.ic_feedback_black_24dp).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int height = displaymetrics.heightPixels;
int width = displaymetrics.widthPixels;
PackageManager manager = getApplicationContext().getPackageManager();
PackageInfo info = null;
try {
info = manager.getPackageInfo(getPackageName(), 0);
} catch (PackageManager.NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String version = info.versionName;
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("message/rfc822");
i.putExtra(Intent.EXTRA_EMAIL, new String[]{getResources().getString(R.string.developer_email)});
i.putExtra(Intent.EXTRA_SUBJECT, getResources().getString(R.string.app_name) + version);
i.putExtra(Intent.EXTRA_TEXT,
"\n" + " Device :" + getDeviceName() +
"\n" + " System Version:" + Build.VERSION.SDK_INT +
"\n" + " Display Height :" + height + "px" +
"\n" + " Display Width :" + width + "px" +
"\n\n" + "Have a problem? Please share it with us and we will do our best to solve it!" +
"\n");
startActivity(Intent.createChooser(i, "Send Email"));
return false;
}
}),
new PrimaryDrawerItem().withSelectable(false).withName("Exit").withIcon(R.drawable.ic_exit_to_app_black_24dp).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
finish();
return false;
}
})).
withSavedInstance(savedInstanceState)
.build();
}