android html5 localstorage某手机从localstorage中取不到数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android html5 localstorage某手机从localstorage中取不到数据相关的知识,希望对你有一定的参考价值。

最近开发一款App,用html5技术来做,有些数据要存在localstorage中,在登录界面login.html登录成功后存储用户信息到localstorage中,然后在主页面main.html从中取出来。其他几部不同手机测试正常,但发现同事的某部华为手机从locastorage中取不到数据,貌似是并不支持locaostorage,很奇怪,是还需要什么设置吗?
activity里面开启了storage的,代码:
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
WebView webView = (WebView) findViewById(R.id.loginView);
WebSettings webSettings = webView.getSettings();
webSettings.setjavascriptEnabled(true);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
//设置可以访问文件
webSettings.setAllowFileAccess(true);
//设置页面内部跳转
webView.setWebViewClient(new WebViewClient());
//开启storage
webSettings.setDomStorageEnabled(true);
//开发Html5缓存
webSettings.setAppCacheMaxSize(1024*1024*8);//默认值为Max Interger
String appCachePath = getApplicationContext().getCacheDir().getAbsolutePath();
webSettings.setAppCachePath(appCachePath);
webSettings.setAppCacheEnabled(true);
webView.loadUrl("file:///android_asset/www/login.html");


求解答,网上也没找到类似的问题

参考技术A 读写 权限加了吗

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />本回答被提问者和网友采纳

html5 localstorage能存多少

每个浏览器对localstorage的支持大小是不一样的,chrome是5M ,IE10是1630K你可以用下面的js匿名函数测试不同浏览器对localstorage的支持大小

(function() 
    if(!window.localStorage) 
        console.log('当前浏览器不支持localStorage!')
        
    var test = '0123456789';
    var add = function(num) 
        num += num;
        if(num.length == 10240) 
            test = num;
            return;
        
        add(num);
    
    add(test);
    var sum = test;
    var show = setInterval(function()
        sum += test;
        try 
            window.localStorage.removeItem('test');
            window.localStorage.setItem('test', sum);
            console.log(sum.length / 1024 + 'KB');
         catch(e) 
            alert(sum.length / 1024 + 'KB超出最大限制');
            clearInterval(show);
        
    , 0.1)
)()

IE的测试结果

chrome的

参考技术A

 html5 局部存储详解 - https://21xrx.com/full_stack/Html/html5_local_storage.html

以上是关于android html5 localstorage某手机从localstorage中取不到数据的主要内容,如果未能解决你的问题,请参考以下文章

android 中 webview 怎么用 localStorage

HTML5 和 Cocos2d-js 的cc.sys.localStorage本地存储到哪里了?

html5 localStorage(本地存储)

[html5]localStorage的原理和HTML5本地存储安全性

html5 localstorage 怎么取存储条数

html5 localstorage能存多少