我正在开发一款多语言PhoneGap应用,并希望存储用户的语言偏好。在第一次启动应用程序时,启动画面会出现4个标记,用户选择,然后被引导到该语言的登录页面。从那时起,应用程序加载会跳过启动画面,并以首选语言直接进入登录页面。容易吗?建议?我熟悉cookies /本地存储,但如果有人这样做,我会很感激具体的指示。谢谢。
答案 0 :(得分:7)
您所描述的内容应该非常容易使用localStorage。我在Android上使用它之前对其进行了研究,发现这个webpage非常有帮助code examples and explanations。很短很甜蜜。
答案 1 :(得分:2)
要保存到本地存储使用:
function saveLanuageID(languageID)
window.localStorage.setItem('lang', languageID);
从本地存储中读取
function readLanguageID(){
if (typeof window.localStorage.getItem('lang')!== 'undefined' && window.localStorage.getItem('lang')!=null) {
return window.localStorage.getItem('lang');
}
else return false
}
您必须使用上面的代码测试已保存的语言
if(!readLanguageID())
//redirect to splash
答案 2 :(得分:0)
我希望您使用本地存储,因为在IOS中使用Cookie会产生一些问题。
答案 3 :(得分:0)
我有同样的问题,我采取了不同的方法。
语言文件位于不同的目录中,例如
/assets/www/de/index.html
/assets/www/en/index.html
用户可以通过工具栏中的按钮选择每个Web应用程序中的语言,打开一个对话框。
在开始活动/屏幕中,我想在启动应用程序时选择所选语言,因此我必须知道选择哪种语言(Android,iOS)。但是在Web应用程序中选择了该语言。
所以我创建了一个PhoneGap插件(目前只有Android,但iOS会跟随),这允许我设置一个键/值对。在网络应用程序中,我设置了语言。本机(在活动中)我读取语言(获取键/值对)并选择正确的index.html。
我知道有一些解决方案可以让我在Web应用程序中存储日期。但我想要一个允许我从双方(本机和网络)访问值的解决方案。