android – 保存Kivy应用程序的登录屏幕用户名和密码

android – 保存Kivy应用程序的登录屏幕用户名和密码,第1张

概述我正在开发适用于iOS和 Android的Kivy应用程序,即使应用程序关闭或被杀死,也需要帮助保持用户持久登录.我正在使用Parse来存储用户凭据. 我已经在App类中添加了一个on_pause方法,但这只会让用户在应用程序关闭但未被杀死时保持登录状态.是否有最佳实践可以安全地允许持久用户使用Kivy登录,即使应用程序被杀死后也是如此? 编辑:我更喜欢适用于Android应用和iOS应用的单一K 我正在开发适用于iOS和 Android的Kivy应用程序,即使应用程序关闭或被杀死,也需要帮助保持用户持久登录.我正在使用Parse来存储用户凭据.

我已经在App类中添加了一个on_pause方法,但这只会让用户在应用程序关闭但未被杀死时保持登录状态.是否有最佳实践可以安全地允许持久用户使用Kivy登录,即使应用程序被杀死后也是如此?

编辑:我更喜欢适用于AndroID应用和iOS应用的单一Kivy解决方案,无需编辑/添加iOS或AndroID特定代码.

解决方法 下面是我们最终用于存储登录信息的代码,该信息使用了Kivy的JsonStore.然后,还可以使用Python加密库对凭据进行加密.

from kivy.storage.Jsonstore import JsonStorefrom os.path import joinclass AppScreen(ScreenManager):    data_dir = App().user_data_dir    store = JsonStore(join(data_dir,'storage.Json'))    ...    def login(self):        username = self.login_username.text        password = self.login_password.text        AppScreen.store.put('credentials',username=username,password=password)

这是检索凭据的代码:

try:    store.get('credentials')['username']except KeyError:    username = ""else:    username = store.get('credentials')['username']try:    store.get('credentials')['password']except KeyError:    password = ""else:    password = store.get('credentials')['password']

在.kv文件中,用户名和密码Textinput小部件如下所示:

Textinput:    ID: login_username    text: root.username    on_enter_key: root.login()Textinput:    ID: login_password    text: root.password    on_enter_key: root.login()
总结

以上是内存溢出为你收集整理的android – 保存Kivy应用程序的登录屏幕用户名和密码全部内容,希望文章能够帮你解决android – 保存Kivy应用程序的登录屏幕用户名和密码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1122264.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存