2017-01-13 2 views
0

В настоящее время я работаю над приложением, которое делает timelapse изображения и автоматически сохраняет их на Google Диске, эта часть работает нормально. Однако эти телефоны могут быть развернуты в местах, где физический доступ может быть ограничен, поэтому все, что мы можем делать удаленно, должно выполняться удаленно.Как я могу принудительно удалять удаленные обновления или удаленный код hotswap без взаимодействия с человеком?

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

Итак, как я могу удаленно обновлять приложение?

Мой нынешний наилучший подход заключается в том, чтобы отправить уведомление об обновлении силы, которое сообщит приложению, что есть обновление на игровом автомате. Закройте приложение, дождитесь, пока он будет автоматически обновлять его, а затем снова запустите приложение с помощью широковещательного приемника PACKAGE_REPLACED.

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

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

Итак, каков был бы лучший способ сделать это? Не стесняйтесь предлагать и другие подходы.

+0

Предположительно https://github.com/VivekPanyam/Evolve делает в значительной степени то, что мне нужно. Я не могу распространять через магазин игр, но это решит мои проблемы. Посмотрю, работает ли он и обновите проблему. – Syzygy

ответ

0

Хотя я и некоторые коллеги обсуждали, как это решить, генеральный директор компании быстро определил наилучшее решение. Он просто напомнил нам, что можно удаленно устанавливать приложения и обновления на свой телефон через игровой магазин на вашем ПК.

Если приложение запущено, закрывающее приложение, но с помощью широковещательного приемника PACKAGE_REPLACED, приложение может снова запуститься.

Несмотря на взаимодействие с человеком, взаимодействие с телефонами не требуется.

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

Смежные вопросы