Что это значит: должен ли я явно устанавливать "android: fullBackupContent", чтобы избежать резервного копирования определенного регистратора GCM?
Что означает это предупреждение Lint:
Должен явно установить "android: fullBackupContent", чтобы избежать резервного копирования специфичный для устройства GCM?
Я googled, но ничего не нашел.
Ответ 1
Часть тревожных "автозагрузка для приложений" - это возможность контролировать, какие файлы получают поддержку вверх, через android:fullBackupContent. Этот атрибут указывает на ресурс XML (например, @xml/backup_rulez), который описывает либо белый список, либо черный список, управляющий тем, что создается под резервными копиями.
Предупреждение о том, что предупреждение Lint предупреждает о том, что оно не поддерживает идентификатор регистрации GCM, поскольку это устройство, и поэтому его необходимо будет сгенерировать, если данные вашего приложения будут восстановлены из резервной копии на новое устройство, Лично, с моей головы, я не знаю, где GCM хранит этот идентификатор регистрации.
Ответ 2
CommonsWare верна. Тем не менее, GCM не хранит эту регистрацию для вас - GCM quickstarter, который предлагал (с тех пор был обновлен), что вы храните его самостоятельно в общий файл prefs.
Правило lint обнаруживает, что вы объявили приемник для GCM и, следовательно, полагаете, что вы где-то запираете регистр. Поскольку вы не объявили флаг fullBackupContent в своем манифесте, он предупреждает вас, что ваше приложение, скорее всего, переломит восстановление.
Вы используете fullBackupContent для исключения или включения любых данных, которые вы хотели бы не оставить на устройстве, и быть восстановленными на другом устройстве (например, маркер экземпляра экземпляра gcm - это один пример).
Позвольте мне более конкретно сказать о предупреждении Lint.
Как упоминалось в Известные проблемы с помощью службы автоматического резервного копирования:
резервное копирование регистрационного идентификатора, возвращаемого регистрацией Google Cloud Messaging, может разорвать push-уведомления для восстановленного приложения
Поэтому рекомендуется исключить идентификатор регистрации gcm из набора резервных файлов. И запросите API для нового регистрационного идентификатора всякий раз, когда приложение будет восстановлено.