2017-03-16 2 views
1

5分ごとに約20件のコメントを送信できるようにするコメントシステムを作りたいと思います。このようにして、誰も多くのスパムを送信しないようにすることができます。5分ごとに最大20件のコメントを送信できますか?

sharedpreferencesを使用してコメントを数えることができると思います。それぞれのコメントを読んで番号を増やします。しかし、最後の5分間はいかがですか?

int value = sharedPref.getInt("count", 0); 
value = value + 1; 
editor.putInt("count", value); 
+0

おそらく、NowとNow - 5分間に日付差の操作を行い、次にsharedpreferences変数をリセットします。タイムスタンプを保存し、キーペアでカウントします。人々はゲーム/アプリの世界でこれを常に行います。毎時100個のコインを受け取るなど、 – ApolloSoftware

+1

@ApolloSoftwareああ、あなたの答えをありがとう、それは多くの助けになります! –

+1

私は答えとして詳細なバージョンを載せます。 – ApolloSoftware

答えて

1

NowとNow - 5分で日付と時刻の差分操作を行う必要があります。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy:MM:dd:HH:mm"); 
String cTime = sdf.format(new Date()); 

Date date = formatter.parse(cTime); 
Calendar futureTime = Calendar.getInstance(); 
futureTime.setTime(date); 
futureTime.add(Calendar.MINUTES, 5); //This will be now + 5 minutes. 

次に、SharedPreferences変数をリセットできます。

SharedPreference変数/ dataのキーペアにユーザー、タイムスタンプ、およびカウントを保存します。それらの値のうちの2つ以上をカスタムオブジェクトとして作成する必要があるかもしれません。たぶん、Userは文字列として、他の2つは値の中で、後で解析することができます。 HashMapを使用する:

Map<String, String> aMap = new HashMap<String, String>(); 

人々はこれをゲーム/アプリの世界で常に行います。あなたは毎時100個のコインを受け取るなど、私はiOS/Android用のC#/ Unity3Dで何かを実装していました。無料で毎時100個のコインを受け取ることができます。あなたが望むならば、もっと多くのアプリ内購入を行うことができます。

+1

ありがとう、お友達! –

+0

よろしくお願いします! @RickJoe – ApolloSoftware

関連する問題