2015-09-05 4 views
0

Я установил redis и redis-py, и мой код отлично работает на рабочем столе, так как у меня работает redis-сервер, но я знаю, как я могу переносить один и тот же код на свой мобильный и тестировать через Kivy-launcher? Также, что мне нужно делать при создании .apk через buildozer?Использование Redis в мобильном приложении Kivy?

from kivy.storage.redisstore import RedisStore 
params = dict(host='localhost', port=6379, db=14) 
store = RedisStore(params) 

я получаю "ImportError: Нет модуль с именем Redis"

ответ

0

Есть некоторые общие соображения по поводу вопроса:

, котор я не knowbif вы используете Java, Python или Jiton, но, вероятно, это будет быть полезным.

Возможно, вы, вероятно, сможете установить библиотеку redis - так как jvm - это виртуальная машина, я не вижу никаких проблем с этим, даже архитектура не x86, а Arm.

В случае, если эта библиотека является python, она будет даже простой - большинство библиотек redis для python основаны на «telnet» и не имеют кода CY.

Однако есть и другая, более важная проблема - для использования redis сервер должен иметь открытый, не межсетевой экран redis.

Кроме того, пароль redis должен находиться внутри приложения. Если это Java или Jiton, будет не так сложно декомпилировать его и увидеть пароль. В случае python - это намного проще - это должны быть четкие текстовые файлы.

У нас есть аналогичная проблема с Java + Android, а не с redis, но с аккаунтами SMS - что мы имеем, мы попросили каждого пользователя зарегистрировать свою учетную запись и заполнить ее в приложении. Поэтому, если вы декомпилируете, вы ничего не видите.

UPDATE

В приложении для подключения к Redis, вам необходимо будет иметь сервер Redis работает где-то.

Если ваше приложение используется в Интернете, сервер Redis должен быть видимым из Интернета.

Возможно, вы подключитесь к серверу без SSL. Это означает, что пароль Redis будет передаваться четким текстом и может быть видимым для «плохих» людей, которые затем смогут подключаться к серверу и манипулировать/удалять данные.

С другой стороны, даже если есть SSL, «плохое» приложение может попытаться декомпилировать приложение и найти пароль. Тогда этот «плохой» клиент мог манипулировать данными.

Вам также необходимо подумать, что произойдет, если вам по каким-либо причинам понадобится изменить пароль Redis - если пароль является частью приложения, вам необходимо будет обновить всех пользователей.

Возможно, вы захотите выполнить некоторый HTTP API с конечным пользователем пользователя/паролем вместо обычного Redis.

+0

Его Python + kivy, который я использую в своей заявке – pkm

+0

Я считаю, что комментарии по-прежнему актуальны, просто игнорируйте java-часть – Nick

+0

«У сервера должен быть открытый, не межсетевой экран redis». ??? можете ли вы углубиться или указать на ссылки, как запустить сервер redis на Android и как его установить до запуска – pkm

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