Можно ли запустить андроид только при первом открытии приложения?

Хорошо, поэтому я играю с Android-приложением.

90% -ный вариант использования заключается в том, что пользователи хотят перейти прямо к основному экрану списка, чтобы найти то, что они ищут. Это то, что я хочу в качестве экрана по умолчанию.

Однако, когда пользователь загружает приложение, требуется некоторая конфигурация, прежде чем их экран списка будет иметь для них какое-либо значение.

Поэтому мой вопрос заключается в том, как я могу показать конфигурационную активность при первом открытии приложения, а затем экран списка для будущих открытий.

Я также хочу поместить демонстрационную кнопку на экран конфигурации, поэтому я полагаю, что больше, чем просто обнаружение, что это первый раз, я специально хочу определить, выполнил ли пользователь определенные конфигурации на первом экране.

Solutions Collecting From Web of "Можно ли запустить андроид только при первом открытии приложения?"

Мне нравится метод dweebsonduty. Аналогичным образом это сохранить информацию о конфигурации в файлах на SD-карте. Ваше приложение может начать с проверки этих файлов и загрузки информации. Если загрузка выполнена успешно, она переходит к следующему действию, если не запускает соответствующую операцию, чтобы запрашивать пользователя для ввода.

Я сделал то же самое, но вместо того, чтобы заниматься swiching, я просто переключаю представления, пока у меня не будет вся информация, в которой я нуждаюсь, а затем продолжайте движение.

После того, как пользователь загрузил приложение первым, вы можете сохранить информацию о том, выполнил ли пользователь конфигурации в SharedPreferences.

protected void storeSharedPrefs(String value) { /* * Storing in Shared Preferences */ editor.putString("first", value); editor.commit(); //Commiting changes } 

Проверяйте каждое приложение, загруженное по времени, независимо от того, было ли введено его первое время и данные конфигурации, путем проверки SharedPreferences

 private boolean first_time_check() { /* * Checking Shared Preferences if the user had pressed * the remember me button last time he logged in * */ String first = uPreferences.getString("first", null); if((first == null)){ return false; } else return true; } 

Многие приложения фактически хранят текущую версию в SharedPreferences и проверяют ее, если обновление установлено. Его умный способ добиться всплывающего окна «что изменилось» или убедиться, что некоторые настройки установлены (я бы опасался иметь только логический флаг, потому что если вы когда-нибудь захотите добавить дополнительную настройку, вам понадобится второй флаг и Он становится грязным после третьего и т. Д.).

Строка VersionValue = "v.1.0"; Final String PREFS_NAME = "MyPrefsFile";

  SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); if (settings.getBoolean(VersionValue, true)) { //the app is being launched for first time, do something NewDialogFragment newFragment = new NewDialogFragment(); newFragment.show(getFragmentManager(), "New"); // record the fact that the app has been started at least once settings.edit().putBoolean(VersionValue, false).commit(); } 

Вы можете сделать это таким образом и по-прежнему получить тот же результат, я попробовал его в небольшом обходном пути, если вы не полностью понимаете, как проверить, обновляется ли приложение. Вместо этого с помощью этого кода вы можете просто изменить строку VersoinValue на текущую версию приложения, и андроид подумает, что приложение является новым приложением первого раза и будет отображать только код u, который будет написан один раз, до тех пор, пока вы не измените VersionValue на следующее обновление. (:

Как вы будете хранить конфигурацию?

Если это в SQLlite, вы можете просто создать таблицу с именем firstuse и поместить в нее поле, называемое hasbeenused, и сделать его нулевым. Затем, когда приложение используется, вы можете поместить там 1. Затем вы можете читать его каждый раз, когда ваше приложение загружается, и если это поле = 1, переходите к следующему действию.