2010-04-09 9 views
15

내 앱에 먼저 스플래시 화면이 표시됩니다. 그 다른 활동 후에, 나의 주요 활동이 보여 져야합니다. 이것은 나의 디자인 계획이다. 두 번째 활동 (즉, 주 활동 전)은 앱을 처음 사용하는 사용자에게 표시되어야합니다. 그/그녀가 응용 프로그램을 닫으면, 스플래시 화면이 자동으로 주요 활동으로 리디렉션됩니다. 어떻게해야합니까? 어떤 아이디어? Android 휴대 전화 용 앱을 개발 중입니다.안드로이드에 내 앱의 처음 사용자가 있는지 확인하십시오.

답변

20

preferences에 플래그를 유지하고 시작할 때 확인하십시오. 스플래시가 한 번 표시되면 상태를 변경하십시오.

+0

첫 실행 여부에 따라 다른 동작을 관리하는 방법은 무엇입니까? 예 : 처음 실행하면 가입을 통해 사용자를 실행하고 그렇지 않은 경우 홈 페이지를 표시합니다. – Sndn

1

어딘가에 데이터를 저장해야합니다. 경우에 따라 앱을 처음 실행 한 후 빈 파일을 작성하는 것이 가장 쉽습니다. 따라서이 파일의 존재 여부를 확인한 다음 그 파일이 있으면 두 번째 활동을 표시하지 않고 주요 활동 만 표시합니다.

39

예 : sharedPreference 객체를 사용하여 사용자가 애플리케이션을 처음 열 때이를 알려주는 부울 값을 저장합니다. 사용자가 응용 프로그램을 시작할 때 기본 설정을 확인하고 true를 반환하면 중간 화면을 표시합니다.

private SharedPreferences mPreferences; 
.... 
boolean firstTime = mPreferences.getBoolean("firstTime", true); 
if (firstTime) { 
    SharedPreferences.Editor editor = mPreferences.edit(); 
    editor.putBoolean("firstTime", false); 
    editor.commit(); 
    showMiddleActivity(); 
} 

그런 것.

편집 : jqpubliq ...

+0

내가 선택한 기본 설정 이름이 이름 지정에서보다 고유하다는 것을 확인하고 일반적인 "URI"형식을 사용하여 다른 "firstTime"환경 설정을 사용하지 않도록합니다. 그래서 "com.yoursite.yourapp.FirstTime"과 같은 것으로, 아무도 귀하의 사이트 및 앱과 동일한 환경 설정을하지는 않을 것입니다. – Adam

+1

나는 환경 설정이 응용 프로그램에 국한되어 있으므로 접두어를 붙일 필요가 없습니다. – alexanderblom

+3

나는 첫 번째 줄이 있어야한다고 생각한다 : private SharedPreferences mPreferences = getSharedPreferences ("prefsFileName", 0); ''mPreferences = getSharedPreferences ("prefs", 0);를 할당해야하기 전에 – tayler

관련 문제