如何在USER安装我的应用程序时显示启动画面。我不希望每次用户打开时都显示启动画面但仅在USER将其安装到手机上并首次打开时才显示。怎么做到这一点?
答案 0 :(得分:1)
每次应用程序打开时,您都需要检查是否是首次启动应用程序?如果是,则显示您的一次启动画面,否则显示主要活动
您可以使用共享首选项来存储有关首次启动的数据。
答案 1 :(得分:1)
下面,
您应该创建应用程序类,并且需要从应用程序类onCreate方法调用您的require活动。
public class Appli extends android.app.Application {
@Override
public void onCreate() {
super.onCreate();
//manage base on your requirement,you can use share preference for splash screen track
Intent intent = new Intent(this,Main2Activity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
清单:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:name=".Appli"
android:theme="@style/AppTheme">
</application>
以上代码确定无误,我已经过测试。
答案 2 :(得分:0)
在您每次启动应用时都会显示的主要活动中,请尝试以下逻辑。
SharedPreferences mPrefs;
final String splashScreenPref= "SplashScreenShown";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mPrefs = PreferenceManager.getDefaultSharedPreferences(this);
Boolean splashScreenShown= mPrefs.getBoolean(splashScreenPref, false);
if (!splashScreenShown) {
Intent intent=new Intent(MainActivity.this,SplashScreenActivity.class);
startActivity(intent);
SharedPreferences.Editor editor = mPrefs.edit();
editor.putBoolean(splashScreenShown, true);
editor.commit();
finish();
}
}