を寄付しませんでした。ユーザーが別のアクティビティ(名前:About
)から寄付をした後、MainActivity
の広告を非表示にしたい私はSharedPreferences
を使って、ユーザーが寄付するかどうかを指定しました。しかし、私は広告に問題がある、それはユーザーが支払っていない場合でも表示されません!表示/非表示SrartApp広告寄付を作る/私は<code>MainActivity.java</code>で<strong>startappの</strong>広告を持っている、と<strong>は別のアクティビティに</strong>オプションを寄付
*ヒント:以下のコードを追加する前に広告に問題はありません。
以下のコードは、私はSharedPreferences
、
hideBanner();
方法等を用いる方法を説明
....
MainActivity.java:
...
protected SharedPreferences prefs;
protected static final String PREFS_KEY = "donation";
private Banner banner;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
StartAppSDK.init(this, "...", false);
setContentView(R.layout.activity_main);
prefs = getSharedPreferences(PREFS_KEY, Context.MODE_PRIVATE);
if(prefs.getBoolean("don_ban", true))
{
banner = (Banner) findViewById(R.id.startAppBanner);
if(banner != null)
{
banner.hideBanner();
}
}
else
{
if(banner != null)
{
banner.showBanner();
}
}
...
About.java:
...
protected SharedPreferences prefs;
protected SharedPreferences.Editor editor;
...
private IabHelper.OnConsumeFinishedListener consumeFinishedListener = new IabHelper.OnConsumeFinishedListener() {
@Override
public void onConsumeFinished(Purchase purchase, IabResult result) {
if(result.isSuccess())
{
prefs = getSharedPreferences(MainActivity.PREFS_KEY, Context.MODE_PRIVATE);
editor = prefs.edit();
editor.putBoolean("don_ban", true);
editor.commit();
}
else
{
Snackbar.make(findViewById(R.id.coordinatorlayout_about), R.string.unknown_error, Snackbar.LENGTH_SHORT).show();
}
}
};
...
ありがとうございます!実際には私は6時間かけてエラーを見つけようとしました!あなたのソリューションを投稿する前に、私は 'SharedPreferences'の' boolean'のデフォルト値が 'true'であるのを知らなかったのです!私はそれが「偽」だと思っていた!だから、あなたの答えをどうもありがとう。 – Androider
問題ありません!あなたがこれ以上の問題を抱えているなら、私にメッセージをすれば、私は助けてくれるでしょう! – TheAnonymous010