デバッグは時々苦痛を伴うことがあり、上記の質問は私の元のコードの簡単な間違いの結果でした。人間は間違っています...
今すぐ解決してください。次のように私の最初のコードがあって、あなたが鋭く見える場合は、デバイスは、これは、初期化メソッドであるバージョン23
if(Build.VERSION.SDK_INT >= 23) {
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) {
// Storage permissions is already available, save profile photo
initialization();
} else {
// Providing additional rational to the user if permission was not granted
if(shouldShowRequestPermissionRationale(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
Toast.makeText(this, "Storage permission is needed to save your profile photo.", Toast.LENGTH_LONG).show();
}
requestPermissions(new String[] {Manifest.permission.READ_CONTACTS}, WRITE_EXTERNAL_STORAGE);
}
}
を下回っている場合Build.Version
をチェックするif文の間に初期化コードが実行されないことに注意します。 Androidバージョンが23より低いデバイスでは、実行されなかったため、Could not find class
エラーが発生しました。しかし、私はまだVector Drawablesをコード内のどこにも使用していないので、これがRipple Drawableにどのように関連しているのか分かりません。だから、これを読むために取得した誰もが原因下記のAndroidバージョン23とを備えたデバイスのための他のであれば修正を含む完全なコードへ
private void initialization() {
hoverView = (View) findViewById(R.id.hoverView);
hoverView.setVisibility(View.GONE);
mExitAppDialog = new HookUpDialog(this);
mExitAppDialog.setMessage(getString(R.string.exit_app_message));
mExitAppDialog.setOnButtonClickListener(HookUpDialog.BUTTON_OK,
new OnClickListener() {
@Override
public void onClick(View v) {
mExitAppDialog.dismiss();
if (WallActivity.getInstance() != null) {
WallActivity.getInstance().finish();
}
sInstance.finish();
/* Informing the user, to press back again to exit */
Toast.makeText(getApplicationContext(),
R.string.press_back_again_to_exit,
Toast.LENGTH_SHORT).show();
}
});
mExitAppDialog.setOnButtonClickListener(HookUpDialog.BUTTON_CANCEL,
new OnClickListener() {
@Override
public void onClick(View v) {
mExitAppDialog.dismiss();
}
});
mLlRecentActivity = (LinearLayout) findViewById(R.id.llRecentActivity);
mNoActivitiesView = (TextView) findViewById(R.id.tvNoRecentActivities);
}
そして今、上にいくつかの光を当てることがあります。 @Anuragシンへ
if(Build.VERSION.SDK_INT >= 23) {
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) {
// Storage permissions is already available, save profile photo
initialization();
} else {
// Providing additional rational to the user if permission was not granted
if(shouldShowRequestPermissionRationale(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
Toast.makeText(this, "Storage permission is needed to save your profile photo.", Toast.LENGTH_LONG).show();
}
requestPermissions(new String[] {Manifest.permission.READ_CONTACTS}, WRITE_EXTERNAL_STORAGE);
}
} else if (Build.VERSION.SDK_INT < 23) {
// Storage permissions is already available, save profile photo
initialization();
}
おかげで、私はテストと再試験の時間と時間後にこれを見ることができました。グーグルとグーグル
あなたはどちらのバージョンを使用していますか? –
私はGradle Version 3.3とPlugin Version 2.3を使用しています –
正しいです。この例外の原因となる画像を参照しようとする以外のコードをすべて削除するだけでプロジェクトを共有できますか? –