android h5 保存账号,android-React Native WebView,如何存储用户名和密码

我正在为Android和仅使用webview的iphone / ipad创建一个非常简单的应用程序.

我如何存储用户名和密码,这样用户就不必每次都键入它们.提前致谢.

import React, { Component } from 'react';

import {

AppRegistry,

WebView

} from 'react-native';

export default class myapp extends Component {

render() {

return (

source={{uri: 'https://mysecretappurl.com'}}

/>

);

}

}

AppRegistry.registerComponent('myapp', () => myapp);

感谢Fabian的快速回复.

我用InjectionJavascript解决了该问题,即使我在android和ios上关闭并重新启动该应用程序,数据仍然保留.起初,我尝试使用异步存储和reactnativ-webview-bridge时遇到了麻烦,但是由于缺乏知识,我无法实现它们.

import React, { Component } from 'react';

import {

AppRegistry,

WebView

} from 'react-native';

export default class myapp extends Component {

render() {

let jsCode = `

var cookie={};

document.cookie.split('; ').forEach(function(i){cookie[i.split('=')[0]]=i.split('=')[1]});

document.querySelector('#email').value=cookie['email'] || '';

document.querySelector('#password').value=cookie['password'] || '';

document.querySelector('#login button').onclick = function(){

document.cookie = 'email='+document.querySelector('#email').value;

document.cookie = 'password='+document.querySelector('#password').value;

};

`;

return (

source={{uri: 'https://mysecretappurl.com'}}

injectedJavaScript={jsCode}

/>

);

}

}

AppRegistry.registerComponent('myapp', () => myapp);

解决方法:

我不知道我是否正确理解您:

您正在编写一个带有本机反应的“缩小的浏览器”,以仅显示您的网页,并且要在该页面上填写登录表单吗?

如果确实如此,那么您正在寻找一种可能性,以与WebView组件中的页面交换来自React Native应用程序的数据.看一下this tutorial of react-native-webview-bridge.

我会尝试以下方法:

>与您的网页进行通信,并为您的登录表单建立一个侦听器,以将凭据传递给您的RN应用

>使用诸如react-native-simple-store之类的模块将凭证存储在RN应用中

>如果您下次启动该应用,请检查您的存储空间,如果凭据不为空,则通过bridge / injected javascript将其发送到您的网页

标签:reactjs,native,webview,ios,android

来源: https://codeday.me/bug/20191026/1935740.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值