2014-01-17 2 views
0

앱 시작시 기본 활동을 시작하는 올바른 방법은 무엇입니까?
예를 들어 2 가지 활동이 있습니다 (1은 도움말/로그인 유형 활동이고 다른 활동은 기본 활동 임). 사용자가 시작할 때 어떤 활동이 표시되는지 정의 할 수 있습니다.
SharedPreferences을 사용해야합니까?
매니페스트에 변경해야 할 내용은 무엇입니까? 온라인에서 예의 바른 예를 찾지 못했습니다.환경 설정에서 시작 활동 지정하기

: 매니페스트 파일의 주요 활동으로 ThirdActivity 레지스터

또한

public class ThirdActivity extends Activity{ 
Intent myIntent; 

SharedPreferences useFirstActivity; 
SharedPreferences firstRun; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    useFirstActivity = getPreferences(MODE_PRIVATE); 
    firstRun = getSharedPreferences("com.mycompany.myAppName", MODE_PRIVATE); 

if(useFirstActivity.getBoolean("useFirstActivity", true) || firstRun.getBoolean("firstrun", true)) { 
     myIntent = new Intent(this, FirstActivity.class); 
     firstRun.edit().putBoolean("firstrun", false).commit(); 
} 
else { 
     myIntent = new Intent(this, SecondActivity.class); 
} 
startActivity(myIntent); 
} 

}

답변

0
여기

된 SharedPreferences과 앱의 고려 가능한 해결책

가 처음 시작될
 <activity 
     android:name="ThirdActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

매니페스트에 FirstActivity 및 Second Activity도 등록하는 것을 잊지 마십시오!

<activity 
     android:name="FirstActivity" 
</activity> 
<activity 
     android:name="SecondActivity" 
</activity> 
+0

이 아이디어에 대해 생각했지만 어쩌면 더 좋은 방법이 있거나 사용자가 세 번째 활동을 감지 할 수 있습니다. 이 방법이 효과적이며, 더 좋은 해결책이 없다면 나는 당신의 대답을 받아 들일 것입니다. 감사합니다 :) – itchy23

+1

어쩌면 당신은 스플래시 활동을해야하고 스플래시 안에 그 유효성 검사를 할, 그래서 당신은 메인을 시작하지 않습니다. – Aiapaec

관련 문제