ユーザーに Play ストアでの評価を求めるアプリを開発しています。それはうまくいきます。ユーザーが評価ボタンを押すと、アプリの Play ストア ページが表示されます。[戻る] ボタンを押すと、アプリが前面に出て評価ダイアログが表示されます。dialog.dismiss()
Play ストア インテントを開始する直前または直後に使用しましたが、ダイアログが消えず、そこにとどまります。
これが私のコードです、助けてください!
private void rateDialog() {
AlertDialog.Builder mDialogBuilder;
mDialogBuilder = new AlertDialog.Builder(MainActivity.this);
mDialogBuilder.setCancelable(true);
mDialogBuilder.setTitle(getString(R.string.title_RateDialog));
if (!appdata.getBoolean(Constants.IS_RATE_IGNORED, false) && (appdata.getInt(Constants.START_COUNT, 1) % 4) == 0) {
mDialogBuilder.setMessage(getString(R.string.text_RateDialogMessage));
mDialogBuilder.setPositiveButton(R.string.text_OK,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
appdataEditor.putBoolean(Constants.IS_RATE_IGNORED, true);
dialog.dismiss();
try{
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(Constants.PLAY_STORE_URL)));
} catch (ActivityNotFoundException e){
Toast.makeText(getApplicationContext(), "Could not open market page.", Toast.LENGTH_LONG).show();
}
}
});
mDialogBuilder.setNeutralButton(getString(R.string.text_NotNow),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
mDialogBuilder.setNegativeButton(getString(R.string.text_Never),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int id) {
appdataEditor.putBoolean(Constants.IS_RATE_IGNORED, true);
}
});
AlertDialog rateDialog = mDialogBuilder.create();
rateDialog.show();
}
}
onStart()
これをメソッドで呼び出します。