как сохранить настройки приложения и получить их после переустановки или смены устройства - PullRequest
2 голосов
/ 15 апреля 2019

Я новичок в разработке приложений ...

Я прочитал где-то в документе: "... В большинстве случаев вы хотите использовать SharedPreferences, поскольку он автоматически резервируется и переносится на новые устройства ..."

При первой установке мое приложение сохраняет несколько настроек с помощью SharedPreferences. Это прекрасно работает, но если я удаляю приложение или устанавливаю его на другом устройстве, настройки настроек теряются.

Как я могу каким-то образом сохранить эти настройки в Интернете в Google, чтобы иметь возможность восстановить их, если пользователь меняет свой телефон или аналогичный ...

Может ли кто-нибудь указать мне правильное направление?

Ответы [ 2 ]

1 голос
/ 15 апреля 2019

Я прочитал где-то в документе: "... В большинстве случаев вы хотите использовать SharedPreferences, поскольку он автоматически резервируется и переносится на новые устройства ..."

  1. Ваши слова " скопированы и перенесены на новые устройства " нигде не написаны и не соответствуют действительности.
  2. Мы используем SharedPreferences, чтобы свести к минимуму операции с базой данных, это как держать переменные под рукой,

При первой установке мое приложение сохраняет несколько настроек с помощью SharedPreferences.Это прекрасно работает, но если я удаляю приложение или устанавливаю его на другом устройстве, настройки настроек теряются.

  1. Если вы хотите сохранить или запомнить зависимые от устройства настройки, используйте идентификатор устройства / imei_id и сохраните их в базе данных mysql вашего веб-сервера
  2. Даже если пользователь удаляет приложение изустройство и установить снова в любое время в будущем, сделать вызов с асинхронной задачей на сервер, отправив deviceid / imei_id и получить его настройки из базы данных mysql и показать его.

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

  1. Если пользователь меняет устройство, вы ничего не можете сделать.
  2. Одним из способов является сохранение открытых ключей уровней device_id на сервере.
  3. Если пользователь меняет устройство и использует этот ключ, затем показывает ему ответ, этот ключ назначается другому устройству, но если вы тот же, дождитесь нашей поддержки
  4. Позвоните ему, подтвердитеон тот же старый пользователь с новым устройством и удаляет свою старую запись из mysql и назначает старый ключ для новой записи устройства
  5. или использует систему OTP SMS для идентификации уже существующих клиентов с уникальными номерами телефонов
  6. Если код аутентификации OTP правильный, то получите настройки для этого пользователя с сервера, удалите старую запись mysql, измените новую запись со старым ключом и номером мобильного телефона

Это должно быть ваше направление

Редактировать: 2 ##

Я надеялся, что существует более простое решение, но ....

У разработчиков нет коротких путей до даты, и этоникогда не будет

Почему нет коротких путей / простых способов?

Любое устройство (мобильное, настольное / ноутбук / любое устройство AI), которое управляется системным программным обеспечением, способновыполнять задачи согласно его структурированному.

Пример: android основан на java, очевидно, вы можете создавать приложения на основе javascript, но это расширение существующей системы, Android по-прежнему имеет основу виртуальной машины Java.(Dalvic / Malvic like)

  1. Итак, всегда лучше использовать native java
  2. Да, Kotlin - лучший вариант сейчас, и лучше, чем гибридный подход
  3. У каждого способа есть свои преимущества, недостатки
  4. Если вы разработчик, вам следует использовать native подход
  5. Теперь ваш Java-код никогда не знает, на какой версии он работает, так что вы должны, check android versions programming wise, и решить поток для выше зефира и ниже зефира, и это явно сделано разработчиком путем кодирования.
  6. Например, когда пользователь регистрируется, он никогда не показывается, пожалуйста, зарегистрируйтесь сноваэкран, это не магия, ни Google, ни, Java, ни Android ничего не делает, разработчик имеет decided, planned, architectured, designed, coded, tested, что.
  7. Даже разработчикам нужно позаботиться о exceptions, вам нужно справиться с этим, чтобы сохранить приложение от crashing.
  8. Короче говоря, разработчик god, который создает его own universe, и все это pre-planned и verified вот и все.
0 голосов
/ 15 апреля 2019

Вы должны использовать allowBackup = "true" в вашем файле манифеста. Более подробную информацию можно найти здесь: AutoBackup

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...