我想知道显示T& C对话框的推荐方法是什么?一个简单的AlertDialog?此外,如何防止此对话框在每次启动时显示?我是否需要使用SharedPreferences来存储布尔值(接受\不接受)或者是否有更简单的方法?我试图了解社区推荐的方法来解决android中一些更常见的情况。
答案 0 :(得分:0)
我在我的应用中这样做,但更复杂。我有一个Java的Web服务来获取数据库中语言环境的最后一个术语。在Android应用程序中,我正在为terms_id,terms_description和locale创建一个sqlite表。 terms_id按顺序desc定义我的最后条款。我在Android上使用Locale.getDefault()。toString()获得默认语言环境。如果查询没有返回一个术语,那么我正在调用web服务传递没有terms_id和android locale。如果查询返回一个术语,我得到最后一个并调用Web服务传递查询返回的terms_id,术语和android语言环境,如果它在数据库中不同。 Web服务验证android中的terms_id是否是数据库中的最后一个。如果不是,那么它获取最后一个用于android locale,或者,如果没有android locale的条款,那么它获得默认语言环境的最后一个(en_US)。如果android上的terms_id与数据库相同,则web服务验证是否在数据库中存在android的locale返回此版本,否则返回locale default的版本。如果Android mobile上的条款已经存在正确的版本或默认版本,那么Web服务将返回一个代码,指示版本正常。之后,如果需要,我会在条款表中保存这些条款。
我现在正在寻找显示条款的最佳方式。我想我会创建一个半透明的Activity来创建一个带有面板的窗口来显示术语和两个按钮“Accept”和“Reject”。如果用户接受条款,我将调用另一个Web服务在服务器上标记用户已接受此版本的条款。将来,我可以更新Web数据库中创建新版本的条款,当用户在移动应用程序上登录时,我将调用Web服务登录并验证用户是否已接受最新版本的条款,如果没有,则返回新版本,然后,我将显示一条消息供用户阅读并接受新版本的术语。
最好的问候。