React Native 路由跳转
-
发送广播和接受事件通知DeviceEventEmitter
A/B页面之间进行"通信"//A页面 导入组件: import { DeviceEventEmitter } from 'react-native';//添加监听 //A页面 添加广播事件 DeviceEventEmitter.emit('setTitle', result.data);
//B页面 导入组件 import { DeviceEventEmitter } from 'react-native';//添加监听 componentWillMount() { this.setTitle = DeviceEventEmitter.addListener('setTitle', (title)=>{ this.setState({ title, }) }); } //最后不要忘了,卸载接受广播的方法 componentWillUnmount(){ // DeviceEventEmitter.removeListener(); this.setTitle.remove(); }
-
返回并刷新页面,
this.props.navigation.goBack()并不会触发前一个页面的生命钩子,然而有时我们在新页面进行了修改操作,
同时之前的页面也发生了相应的改变this.props.navigation.navigate("newPage", { id: this.state.id, refresh: function () { this._init(); } }); //newPage页面返回操作执行后会执行 refresh 方法里的 _init(); <View onPress={() => { this.props.navigation.state.params.refresh(); this.props.navigation.goBack(); }}> <Text>goback</Text> </View>
React Native 项目名称修改
- 修改应用显示名(手机上的APP名称)
androidappsrcmainresvaluesstrings.xml //IOS下可以在 ios{project}Info.plist中直接更改
- 修改包名
package.json
index.{os}.js
androidsettings.gradle
androidappbuild.gradle
androidappsrcmainjavacom{project}
androidappsrcmainjavacom{project}MainActivity.java
androidappsrcmainjavacom{project}MainApplication.java
<key>CFBundleIdentifier</key>
<key>CFBundleName</key>
//下的string直接更改项目名称。
//不过在XCode下更方便,开发IOS的话,还是来台MAC吧 - -
React Native 应用图标修改
替换android/app/src/main/res/mipmap-XXX文件夹里面的图片,名字不能修改
React Native 启动页设置
替换android/app/src/main/res/drawable-XXX文件夹里面的图片,名字不能修改
注:gradlew assembleRelease或者react-native run-android之前最好先gradlew clean
Android如何查看应用签名信息
打开密钥放置文件夹(android/app/),输入以下命令,my-release-key.jks为密钥文件名
keytool -list -keystore my-release-key.jks
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。