私が持っているもの:私のapkには適切なタスクがあります。アカウントの登録と私のapkのメインメニュー。
欲しいもの:アプリケーションを初めて起動するときは、登録フォームを表示する必要があります。ユーザーが登録を完了すると(サーバーで確認)、アプリケーションメニューが起動します。(したがって、次回はフォーム登録が開始されなくなります。)
問題:どうすればこれを行うことができますか?誰かが私にその方法を教えてもらえますか?いくつかのチュートリアルまたはいくつかのスニペットコード?
ありがとう。
私が持っているもの:私のapkには適切なタスクがあります。アカウントの登録と私のapkのメインメニュー。
欲しいもの:アプリケーションを初めて起動するときは、登録フォームを表示する必要があります。ユーザーが登録を完了すると(サーバーで確認)、アプリケーションメニューが起動します。(したがって、次回はフォーム登録が開始されなくなります。)
問題:どうすればこれを行うことができますか?誰かが私にその方法を教えてもらえますか?いくつかのチュートリアルまたはいくつかのスニペットコード?
ありがとう。
SharedPreferencesを使用できます。これらの設定は、この目的で使用するために保存されます。
class MainMenu extends Activity {
protected static final String PREFS_USER = "user";
@Override
public void onStart() {
super.onStart(); //don't forget this, because you must call parent onStart method
SharedPreferences prefs = getSharedPreferences( PREFS_FILE, 0);
String userKey = prefs.getString("userKey", null );
//if user key is not set yet, you should open registration Activity
if (userKey == null) {
Intent intent = new Intent(this, Registration.class);
startActivity(intent);
}
}
}
完了後にユーザー登録を再確認する必要があるため、onStartメソッドを使用します。
次に、ユーザー成功登録、次のコードでユーザーキーを設定できます。
SharedPreferences prefs = getSharedPreferences( PREFS_FILE, 0);
prefs.edit().putString("userKey", userKey ).commit();
さらに、startActivityforResultと組み合わせることができます
いくつかの追加のリファレンスと説明はここにあります。
共有設定を使用して情報を保存します。ユーザーがすでに登録しているかどうかは関係ありません。このショーの登録に応じて、またはメインメニューに直接移動します。
public static final String PREFS_NAME = "PrefLogFile";
public static final String PREF_REGISTERED = "registered";
final SharedPreferences pref = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
// sets righr preferences
boolean registered = pref.getBoolean(PREF_REGISTERED, false);
if (registered) {
//go to main menu here
}else{
//do registration here
//after registration is complete do this:
pref.edit().putBoolean(PREF_REGISTERED, true).commit();
}
この目的には共有設定を使用します。このようにフォーム登録のoncreat()メソッドでこれを使用します
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub!!
super.onCreate(savedInstanceState);
SharedPreferences versionfile = getSharedPreferences(PREFS_NAME,Context.MODE_PRIVATE);
boolean isRegister =versionfile.getString("Registration",false);
if(isRegister){
setContentView(R.id.yourRegistrationlayout)
}else
//Start menu Activity
}