《React-Native系列》28、 RN之AsyncStorage

AsyncStorage使用详解
本文介绍了React Native中AsyncStorage的功能及使用方法,包括设置、获取、删除数据等操作,并提供了示例代码。

AsyncStorage是一个简单的、未加密的、异步的、持久化的Key-Value存储系统,它对于App来说是全局性的。它用来代替LocalStorage。

http://blog.csdn.net/hsbirenjie/article/category/6307126/2



iOS中存储类似于NSUserDefault,存储问plist文件存放在设备中。
Android中存储会在 RocksDB 或者 SQLite 中,取决于你使用哪个。


我们还是来看看官网文档,AsyncStorage提供的方法如下:

static getItem(key: string, callback?: ?(error: ?Error, result: ?string) => void) 

读取key字段并将结果作为第二个参数传递给callback。如果有任何错误发生,则会传递一个Error对象作为第一个参数。返回一个Promise对象。

static setItem(key: string, value: string, callback?: ?(error: ?Error) => void) 

将key字段的值设置成value,并在完成后调用callback函数。如果有任何错误发生,则会传递一个Error对象作为第一个参数。返回一个Promise对象。

static removeItem(key: string, callback?: ?(error: ?Error) => void) 

删除一个字段。返回一个Promise对象。

static mergeItem(key: string, value: string, callback?: ?(error: ?Error) => void)

假设已有的值和新的值都是字符串化的JSON,则将两个值合并。返回一个Promise对象。还没有被所有原生实现都支持。

static clear(callback?: ?(error: ?Error) => void) 

删除全部的AsyncStorage数据,不论来自什么库或调用者。通常不应该调用这个函数——使用removeItem或者multiRemove来清除你自己的key。返回一个Promise对象。

static getAllKeys(callback?: ?(error: ?Error, keys: ?Array<string>) => void) 

获取所有本应用可以访问到的数据,不论来自什么库或调用者。返回一个Promise对象。

static flushGetRequests() 

清除所有进行中的查询操作。

static multiGet(keys: Array<string>, callback?: ?(errors: ?Array<Error>, result: ?Array<Array<string>>) => void) 

获取keys所包含的所有字段的值,调用callback回调函数时返回一个key-value数组形式的数组。返回一个Promise对象。

multiGet(['k1', 'k2'], cb) -> cb([['k1', 'val1'], ['k2', 'val2']])

static multiSet(keyValuePairs: Array<Array<string>>, callback?: ?(errors: ?Array<Error>) => void) 

multiSet和multiMerge都接受一个与multiGet输出值一致的key-value数组的数组。返回一个Promise对象。

multiSet([['k1', 'val1'], ['k2', 'val2']], cb);

static multiRemove(keys: Array<string>, callback?: ?(errors: ?Array<Error>) => void) 

删除所有键在keys数组中的数据。返回一个Promise对象。

static multiMerge(keyValuePairs: Array<Array<string>>, callback?: ?(errors: ?Array<Error>) => void) 

将多个输入的值和已有的值合并,要求都是字符串化的JSON。返回一个Promise对象。还没有被所有原生实现都支持。


我们还是来看看例子:

我们实现一个效果,给一个key设置一个值并在界面显示

删除这个key,如果存在值,那么删除它,如果不存在提示。


设置值:

[javascript]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. setData(text){  
  2.   AsyncStorage.setItem(AsyncStorageKey,text,()=>{  
  3.     this.setState({  
  4.       data:text,  
  5.     });  
  6.   });  
  7. }  
注意可以设置一个回调,设置成功后,调用回调,修改状态机变量


删除值:

[javascript]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. delData(){  
  2.   // 读取key字段并将结果作为第二个参数传递给callback。  
  3.   // 如果有任何错误发生,则会传递一个Error对象作为第一个参数。返回一个Promise对象。  
  4.   AsyncStorage.getItem(AsyncStorageKey,(error,text)=>{  
  5.     if(text=== null ){  
  6.       alert(AsyncStorageKey +"没有对应的值");  
  7.     }else{  
  8.       //删除数据  
  9.       AsyncStorage.removeItem(AsyncStorageKey,()=>{  
  10.         this.setState({  
  11.           data:"",  
  12.         },()=>{  
  13.           alert('删除成功');  
  14.         });  
  15.       });  
  16.     }  
  17.   });  
  18. }  

在删除key时,我们先获取一遍,注意 getItem 这个方法的回调方式。

我们发现在RN中很多地方都是通过回调来实现一些功能。


Demo实现的效果如下:



完整代码如下:

[javascript]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. 'use strict';  
  2. import React, { Component } from 'react';  
  3. import {  
  4.   StyleSheet,  
  5.   View,  
  6.   Text,  
  7.   TouchableHighlight,  
  8.   Dimensions,  
  9.   AsyncStorage  
  10. } from 'react-native';  
  11.   
  12. const {width, height} = Dimensions.get('window');  
  13.   
  14.   
  15. var data = "";  
  16. const AsyncStorageKey = "AS_";  
  17. export default class AsyncStorageExample extends Component {  
  18.   
  19.   constructor(props) {  
  20.     super(props);  
  21.     this.state = {  
  22.       data:""  
  23.     };  
  24.   }  
  25.   
  26.   setData(text){  
  27.     AsyncStorage.setItem(AsyncStorageKey,text,()=>{  
  28.       this.setState({  
  29.         data:text,  
  30.       });  
  31.     });  
  32.   }  
  33.   
  34.   delData(){  
  35.     // 读取key字段并将结果作为第二个参数传递给callback。  
  36.     // 如果有任何错误发生,则会传递一个Error对象作为第一个参数。返回一个Promise对象。  
  37.     AsyncStorage.getItem(AsyncStorageKey,(error,text)=>{  
  38.       if(text=== null ){  
  39.         alert(AsyncStorageKey +"没有对应的值");  
  40.       }else{  
  41.         //删除数据  
  42.         AsyncStorage.removeItem(AsyncStorageKey,()=>{  
  43.           this.setState({  
  44.             data:"",  
  45.           },()=>{  
  46.             alert('删除成功');  
  47.           });  
  48.         });  
  49.       }  
  50.     });  
  51.   }  
  52.   
  53.   
  54.   
  55.   render() {  
  56.     return (  
  57.       <View style={styles.container}>  
  58.           <TouchableHighlight style={styles.itemView} underlayColor="red" onPress={this.setData.bind(this,"我是小刀")}>  
  59.               <Text style={styles.itemText}>  
  60.                 1、存储数据  
  61.               </Text>  
  62.           </TouchableHighlight>  
  63.   
  64.           <TouchableHighlight style={styles.itemView} underlayColor="red" onPress={this.delData.bind(this)}>  
  65.               <Text style={styles.itemText}>  
  66.                 2、删除数据  
  67.               </Text>  
  68.           </TouchableHighlight>  
  69.   
  70.           <Text style={{paddingTop:40}}>  
  71.             AsyncStorage存储的值是:{this.state.data}  
  72.           </Text>  
  73.       </View>  
  74.     );  
  75.   }  
  76. }  
  77.   
  78. const styles = StyleSheet.create({  
  79.   container: {  
  80.     flex: 1,  
  81.     backgroundColor: '#f2f2f2',  
  82.     paddingTop:20,  
  83.   },  
  84.   itemView:{  
  85.     backgroundColor:'grey',  
  86.     height:44,  
  87.     width:width,  
  88.     justifyContent:'center',  
  89.     marginTop:10,  
  90.   },  
  91.   itemText:{  
  92.     fontSize:15,  
  93.     color:'#ffffff',  
  94.     textAlign:'left',  
  95.     marginLeft:20,  
  96.   },  
  97. });  

参考:http://reactnative.cn/docs/0.31/asyncstorage.html#content
D:\AwesomeProject>npx react-native config { "root": "D:\\AwesomeProject", "reactNativePath": "D:\\AwesomeProject\\node_modules\\react-native", "dependencies": { "@ant-design/icons-react-native": { "root": "D:\\AwesomeProject\\node_modules\\@ant-design\\icons-react-native", "name": "@ant-design/icons-react-native", "platforms": { "ios": null, "android": null }, "assets": [ "D:\\AwesomeProject\\node_modules\\@ant-design\\icons-react-native\\fonts\\antfill.ttf", "D:\\AwesomeProject\\node_modules\\@ant-design\\icons-react-native\\fonts\\antoutline.ttf" ], "hooks": {}, "params": [] }, "@react-native-async-storage/async-storage": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage", "name": "@react-native-async-storage/async-storage", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage\\ios\\RNCAsyncStorage.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage\\RNCAsyncStorage.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage\\ios\\RNCAsyncStorage.xcodeproj", "projectName": "RNCAsyncStorage.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage\\android", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-async-storage\\async-storage", "packageImportPath": "import com.reactnativecommunity.asyncstorage.AsyncStoragePackage;", "packageInstance": "new AsyncStoragePackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "@react-native-community/cameraroll": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll", "name": "@react-native-community/cameraroll", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll\\ios\\RNCCameraRoll.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll\\react-native-cameraroll.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll\\ios\\RNCCameraRoll.xcodeproj", "projectName": "RNCCameraRoll.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll\\android", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\cameraroll", "packageImportPath": "import com.reactnativecommunity.cameraroll.CameraRollPackage;", "packageInstance": "new CameraRollPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "@react-native-community/masked-view": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view", "name": "@react-native-community/masked-view", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view\\ios\\RNCMaskedView.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view\\RNCMaskedView.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view\\ios\\RNCMaskedView.xcodeproj", "projectName": "RNCMaskedView.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view\\android", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\masked-view", "packageImportPath": "import org.reactnative.maskedview.RNCMaskedViewPackage;", "packageInstance": "new RNCMaskedViewPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "@react-native-community/segmented-control": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-community\\segmented-control", "name": "@react-native-community/segmented-control", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\segmented-control\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\segmented-control", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\segmented-control\\ios\\RNCSegmentedControl.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\segmented-control\\react-native-segmented-control.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\segmented-control\\ios\\RNCSegmentedControl.xcodeproj", "projectName": "RNCSegmentedControl.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": null }, "assets": [], "hooks": {}, "params": [] }, "@react-native-community/slider": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider", "name": "@react-native-community/slider", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider\\ios\\RNCSlider.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider\\react-native-slider.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider\\ios\\RNCSlider.xcodeproj", "projectName": "RNCSlider.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider\\android", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\slider", "packageImportPath": "import com.reactnativecommunity.slider.ReactSliderPackage;", "packageInstance": "new ReactSliderPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "@react-native-community/viewpager": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager", "name": "@react-native-community/viewpager", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager\\ios\\Viewpager.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager\\react-native-viewpager.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager\\ios\\Viewpager.xcodeproj", "projectName": "Viewpager.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager\\android", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-community\\viewpager", "packageImportPath": "import com.reactnativecommunity.viewpager.RNCViewPagerPackage;", "packageInstance": "new RNCViewPagerPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "@react-native-picker/picker": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker", "name": "@react-native-picker/picker", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker\\ios\\RNCPicker.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker\\RNCPicker.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker\\ios\\RNCPicker.xcodeproj", "projectName": "RNCPicker.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker\\android", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-picker\\picker", "packageImportPath": "import com.reactnativecommunity.picker.RNCPickerPackage;", "packageInstance": "new RNCPickerPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "@react-native-segmented-control/segmented-control": { "root": "D:\\AwesomeProject\\node_modules\\@react-native-segmented-control\\segmented-control", "name": "@react-native-segmented-control/segmented-control", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\@react-native-segmented-control\\segmented-control\\ios", "folder": "D:\\AwesomeProject\\node_modules\\@react-native-segmented-control\\segmented-control", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\@react-native-segmented-control\\segmented-control\\ios\\RNCSegmentedControl.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\@react-native-segmented-control\\segmented-control\\react-native-segmented-control.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\@react-native-segmented-control\\segmented-control\\ios\\RNCSegmentedControl.xcodeproj", "projectName": "RNCSegmentedControl.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": null }, "assets": [], "hooks": {}, "params": [] }, "jcore-react-native": { "root": "D:\\AwesomeProject\\node_modules\\jcore-react-native", "name": "jcore-react-native", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\jcore-react-native\\example\\ios", "folder": "D:\\AwesomeProject\\node_modules\\jcore-react-native", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\jcore-react-native\\ios\\RCTJCoreModule.xcodeproj\\project.pbxproj", "podfile": "D:\\AwesomeProject\\node_modules\\jcore-react-native\\example\\ios\\Podfile", "podspecPath": "D:\\AwesomeProject\\node_modules\\jcore-react-native\\JCore.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\jcore-react-native\\ios\\RCTJCoreModule.xcodeproj", "projectName": "RCTJCoreModule.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\jcore-react-native\\android", "folder": "D:\\AwesomeProject\\node_modules\\jcore-react-native", "packageImportPath": "import cn.jiguang.plugins.core.JCorePackage;", "packageInstance": "new JCorePackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "jpush-react-native": { "root": "D:\\AwesomeProject\\node_modules\\jpush-react-native", "name": "jpush-react-native", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\jpush-react-native\\ios", "folder": "D:\\AwesomeProject\\node_modules\\jpush-react-native", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\jpush-react-native\\ios\\RCTJPushModule.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\jpush-react-native\\JPush.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\jpush-react-native\\ios\\RCTJPushModule.xcodeproj", "projectName": "RCTJPushModule.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\jpush-react-native\\android", "folder": "D:\\AwesomeProject\\node_modules\\jpush-react-native", "packageImportPath": "import cn.jiguang.plugins.push.JPushPackage;", "packageInstance": "new JPushPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-background-timer": { "root": "D:\\AwesomeProject\\node_modules\\react-native-background-timer", "name": "react-native-background-timer", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-background-timer\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-background-timer", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-background-timer\\ios\\RNBackgroundTimer.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-background-timer\\react-native-background-timer.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-background-timer\\ios\\RNBackgroundTimer.xcodeproj", "projectName": "RNBackgroundTimer.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-background-timer\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-background-timer", "packageImportPath": "import com.ocetnik.timer.BackgroundTimerPackage;", "packageInstance": "new BackgroundTimerPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-camera": { "root": "D:\\AwesomeProject\\node_modules\\react-native-camera", "name": "react-native-camera", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-camera\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-camera", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-camera\\ios\\RNCamera.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-camera\\react-native-camera.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-camera\\ios\\RNCamera.xcodeproj", "projectName": "RNCamera.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-camera\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-camera", "packageImportPath": "import org.reactnative.camera.RNCameraPackage;", "packageInstance": "new RNCameraPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-compressor": { "root": "D:\\AwesomeProject\\node_modules\\react-native-compressor", "name": "react-native-compressor", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-compressor\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-compressor", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-compressor\\ios\\Compressor.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-compressor\\react-native-compressor.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-compressor\\ios\\Compressor.xcodeproj", "projectName": "Compressor.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-compressor\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-compressor", "packageImportPath": "import com.reactnativecompressor.CompressorPackage;", "packageInstance": "new CompressorPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-device-info": { "root": "D:\\AwesomeProject\\node_modules\\react-native-device-info", "name": "react-native-device-info", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-device-info\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-device-info", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-device-info\\ios\\RNDeviceInfo.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-device-info\\RNDeviceInfo.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-device-info\\ios\\RNDeviceInfo.xcodeproj", "projectName": "RNDeviceInfo.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-device-info\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-device-info", "packageImportPath": "import com.learnium.RNDeviceInfo.RNDeviceInfo;", "packageInstance": "new RNDeviceInfo()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-exception-handler": { "root": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler", "name": "react-native-exception-handler", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler\\ios\\ReactNativeExceptionHandler.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler\\ReactNativeExceptionHandler.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler\\ios\\ReactNativeExceptionHandler.xcodeproj", "projectName": "ReactNativeExceptionHandler.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-exception-handler", "packageImportPath": "import com.masteratul.exceptionhandler.ReactNativeExceptionHandlerPackage;", "packageInstance": "new ReactNativeExceptionHandlerPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-fs": { "root": "D:\\AwesomeProject\\node_modules\\react-native-fs", "name": "react-native-fs", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-fs", "folder": "D:\\AwesomeProject\\node_modules\\react-native-fs", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-fs\\RNFS.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-fs\\RNFS.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-fs\\RNFS.xcodeproj", "projectName": "RNFS.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-fs\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-fs", "packageImportPath": "import com.rnfs.RNFSPackage;", "packageInstance": "new RNFSPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-gesture-handler": { "root": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler", "name": "react-native-gesture-handler", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler\\ios\\RNGestureHandler.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler\\RNGestureHandler.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler\\ios\\RNGestureHandler.xcodeproj", "projectName": "RNGestureHandler.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-gesture-handler", "packageImportPath": "import com.swmansion.gesturehandler.react.RNGestureHandlerPackage;", "packageInstance": "new RNGestureHandlerPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-get-location": { "root": "D:\\AwesomeProject\\node_modules\\react-native-get-location", "name": "react-native-get-location", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-get-location\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-get-location", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-get-location\\ios\\ReactNativeGetLocation.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-get-location\\ReactNativeGetLocation.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-get-location\\ios\\ReactNativeGetLocation.xcodeproj", "projectName": "ReactNativeGetLocation.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-get-location\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-get-location", "packageImportPath": "import com.github.douglasjunior.reactNativeGetLocation.ReactNativeGetLocationPackage;", "packageInstance": "new ReactNativeGetLocationPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-get-random-values": { "root": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values", "name": "react-native-get-random-values", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values\\ios\\RNGetRandomValues.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values\\react-native-get-random-values.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values\\ios\\RNGetRandomValues.xcodeproj", "projectName": "RNGetRandomValues.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-get-random-values", "packageImportPath": "import org.linusu.RNGetRandomValuesPackage;", "packageInstance": "new RNGetRandomValuesPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-image-picker": { "root": "D:\\AwesomeProject\\node_modules\\react-native-image-picker", "name": "react-native-image-picker", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-image-picker\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-image-picker", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-image-picker\\ios\\RNImagePicker.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-image-picker\\react-native-image-picker.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-image-picker\\ios\\RNImagePicker.xcodeproj", "projectName": "RNImagePicker.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-image-picker\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-image-picker", "packageImportPath": "import com.imagepicker.ImagePickerPackage;", "packageInstance": "new ImagePickerPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-linear-gradient": { "root": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient", "name": "react-native-linear-gradient", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient\\ios\\BVLinearGradient.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient\\BVLinearGradient.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient\\ios\\BVLinearGradient.xcodeproj", "projectName": "BVLinearGradient.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-linear-gradient", "packageImportPath": "import com.BV.LinearGradient.LinearGradientPackage;", "packageInstance": "new LinearGradientPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-permissions": { "root": "D:\\AwesomeProject\\node_modules\\react-native-permissions", "name": "react-native-permissions", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-permissions\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-permissions", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-permissions\\ios\\RNPermissions.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-permissions\\RNPermissions.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-permissions\\ios\\RNPermissions.xcodeproj", "projectName": "RNPermissions.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-permissions\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-permissions", "packageImportPath": "import com.zoontek.rnpermissions.RNPermissionsPackage;", "packageInstance": "new RNPermissionsPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-reanimated": { "root": "D:\\AwesomeProject\\node_modules\\react-native-reanimated", "name": "react-native-reanimated", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-reanimated\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-reanimated", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-reanimated\\ios\\RNReanimated.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-reanimated\\RNReanimated.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-reanimated\\ios\\RNReanimated.xcodeproj", "projectName": "RNReanimated.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-reanimated\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-reanimated", "packageImportPath": "import com.swmansion.reanimated.ReanimatedPackage;", "packageInstance": "new ReanimatedPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-safe-area-context": { "root": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context", "name": "react-native-safe-area-context", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context\\ios\\SafeAreaView.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context\\react-native-safe-area-context.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context\\ios\\SafeAreaView.xcodeproj", "projectName": "SafeAreaView.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-safe-area-context", "packageImportPath": "import com.th3rdwave.safeareacontext.SafeAreaContextPackage;", "packageInstance": "new SafeAreaContextPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-screens": { "root": "D:\\AwesomeProject\\node_modules\\react-native-screens", "name": "react-native-screens", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-screens\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-screens", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-screens\\ios\\RNScreens.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-screens\\RNScreens.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-screens\\ios\\RNScreens.xcodeproj", "projectName": "RNScreens.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-screens\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-screens", "packageImportPath": "import com.swmansion.rnscreens.RNScreensPackage;", "packageInstance": "new RNScreensPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-signature-capture": { "root": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture", "name": "react-native-signature-capture", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture\\Example\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture\\ios\\RSSignatureCapture.xcodeproj\\project.pbxproj", "podfile": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture\\Example\\ios\\Podfile", "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture\\react-native-signature-capture.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture\\ios\\RSSignatureCapture.xcodeproj", "projectName": "RSSignatureCapture.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-signature-capture", "packageImportPath": "import com.rssignaturecapture.RSSignatureCapturePackage;", "packageInstance": "new RSSignatureCapturePackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-sound": { "root": "D:\\AwesomeProject\\node_modules\\react-native-sound", "name": "react-native-sound", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-sound", "folder": "D:\\AwesomeProject\\node_modules\\react-native-sound", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-sound\\RNSound.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-sound\\RNSound.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-sound\\RNSound.xcodeproj", "projectName": "RNSound.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-sound\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-sound", "packageImportPath": "import com.zmxv.RNSound.RNSoundPackage;", "packageInstance": "new RNSoundPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-sqlite-storage": { "root": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage", "name": "react-native-sqlite-storage", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage", "folder": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage\\platforms\\ios\\SQLite.xcodeproj\\project.pbxproj", "podfile": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage\\Podfile", "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage\\react-native-sqlite-storage.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage\\platforms\\ios\\SQLite.xcodeproj", "projectName": "SQLite.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage\\platforms\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-sqlite-storage", "packageImportPath": "import org.pgsqlite.SQLitePluginPackage;", "packageInstance": "new SQLitePluginPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-svg": { "root": "D:\\AwesomeProject\\node_modules\\react-native-svg", "name": "react-native-svg", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-svg\\apple", "folder": "D:\\AwesomeProject\\node_modules\\react-native-svg", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-svg\\apple\\RNSVG.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-svg\\RNSVG.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-svg\\apple\\RNSVG.xcodeproj", "projectName": "RNSVG.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-svg\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-svg", "packageImportPath": "import com.horcrux.svg.SvgPackage;", "packageInstance": "new SvgPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-thermal-receipt-printer": { "root": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer", "name": "react-native-thermal-receipt-printer", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer\\ios\\RNThermalReceiptPrinter.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer\\react-native-thermal-receipt-printer.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer\\ios\\RNThermalReceiptPrinter.xcodeproj", "projectName": "RNThermalReceiptPrinter.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-thermal-receipt-printer", "packageImportPath": "import com.pinmi.react.printer.RNPrinterPackage;", "packageInstance": "new RNPrinterPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-vector-icons": { "root": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons", "name": "react-native-vector-icons", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons", "folder": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons\\RNVectorIcons.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons\\RNVectorIcons.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons\\RNVectorIcons.xcodeproj", "projectName": "RNVectorIcons.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-vector-icons", "packageImportPath": "import com.oblador.vectoricons.VectorIconsPackage;", "packageInstance": "new VectorIconsPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-webview": { "root": "D:\\AwesomeProject\\node_modules\\react-native-webview", "name": "react-native-webview", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-webview\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-webview", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-webview\\ios\\RNCWebView.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-webview\\react-native-webview.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-webview\\ios\\RNCWebView.xcodeproj", "projectName": "RNCWebView.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-webview\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-webview", "packageImportPath": "import com.reactnativecommunity.webview.RNCWebViewPackage;", "packageInstance": "new RNCWebViewPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] }, "react-native-version-check": { "root": "D:\\AwesomeProject\\node_modules\\react-native-version-check", "name": "react-native-version-check", "platforms": { "ios": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-version-check\\ios", "folder": "D:\\AwesomeProject\\node_modules\\react-native-version-check", "pbxprojPath": "D:\\AwesomeProject\\node_modules\\react-native-version-check\\ios\\RNVersionCheck.xcodeproj\\project.pbxproj", "podfile": null, "podspecPath": "D:\\AwesomeProject\\node_modules\\react-native-version-check\\react-native-version-check.podspec", "projectPath": "D:\\AwesomeProject\\node_modules\\react-native-version-check\\ios\\RNVersionCheck.xcodeproj", "projectName": "RNVersionCheck.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [], "configurations": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\node_modules\\react-native-version-check\\android", "folder": "D:\\AwesomeProject\\node_modules\\react-native-version-check", "packageImportPath": "import io.xogus.reactnative.versioncheck.RNVersionCheckPackage;", "packageInstance": "new RNVersionCheckPackage()", "buildTypes": [] } }, "assets": [], "hooks": {}, "params": [] } }, "commands": [ { "name": "log-ios", "description": "starts iOS device syslog tail" }, { "name": "run-ios", "description": "builds your app and starts it on iOS simulator", "examples": [ { "desc": "Run on a different simulator, e.g. iPhone SE (2nd generation)", "cmd": "react-native run-ios --simulator \"iPhone SE (2nd generation)\"" }, { "desc": "Pass a non-standard location of iOS directory", "cmd": "react-native run-ios --project-path \"./app/ios\"" }, { "desc": "Run on a connected device, e.g. Max's iPhone", "cmd": "react-native run-ios --device \"Max's iPhone\"" }, { "desc": "Run on the AppleTV simulator", "cmd": "react-native run-ios --simulator \"Apple TV\" --scheme \"helloworld-tvOS\"" } ], "options": [ { "name": "--simulator <string>", "description": "Explicitly set simulator to use. Optionally include iOS version between parenthesis at the end to match an exact version: \"iPhone 6 (10.0)\"", "default": "iPhone 13" }, { "name": "--configuration <string>", "description": "Explicitly set the scheme configuration to use", "default": "Debug" }, { "name": "--scheme <string>", "description": "Explicitly set Xcode scheme to use" }, { "name": "--project-path <string>", "description": "Path relative to project root where the Xcode project (.xcodeproj) lives.", "default": "ios" }, { "name": "--device [string]", "description": "Explicitly set device to use by name. The value is not required if you have a single device connected." }, { "name": "--udid <string>", "description": "Explicitly set device to use by udid" }, { "name": "--no-packager", "description": "Do not launch packager while building" }, { "name": "--verbose", "description": "Do not use xcbeautify or xcpretty even if installed" }, { "name": "--port <number>", "default": 8081 }, { "name": "--terminal <string>", "description": "Launches the Metro Bundler in a new window using the specified terminal path." } ] }, { "name": "log-android", "description": "starts logkitty" }, { "name": "run-android", "description": "builds your app and starts it on a connected Android emulator or device", "options": [ { "name": "--root <string>", "description": "[DEPRECATED - root is discovered automatically] Override the root directory for the android build (which contains the android directory)", "default": "" }, { "name": "--variant <string>", "description": "Specify your app's build variant", "default": "debug" }, { "name": "--appFolder <string>", "description": "[DEPRECATED – use \"project.android.appName\" in react-native.config.js] Specify a different application folder name for the android source. If not, we assume is \"app\"" }, { "name": "--appId <string>", "description": "Specify an applicationId to launch after build. If not specified, `package` from AndroidManifest.xml will be used.", "default": "" }, { "name": "--appIdSuffix <string>", "description": "Specify an applicationIdSuffix to launch after build.", "default": "" }, { "name": "--main-activity <string>", "description": "Name of the activity to start", "default": "MainActivity" }, { "name": "--deviceId <string>", "description": "builds your app and starts it on a specific device/simulator with the given device id (listed by running \"adb devices\" on the command line)." }, { "name": "--no-packager", "description": "Do not launch packager while building" }, { "name": "--port <number>", "default": 8081 }, { "name": "--terminal <string>", "description": "Launches the Metro Bundler in a new window using the specified terminal path." }, { "name": "--tasks <list>", "description": "Run custom Gradle tasks. By default it's \"installDebug\"" }, { "name": "--no-jetifier", "description": "Do not run \"jetifier\" – the AndroidX transition tool. By default it runs before Gradle to ease working with libraries that don't support AndroidX yet. See more at: https://www.npmjs.com/package/jetifier." }, { "name": "--active-arch-only", "description": "Build native libraries only for the current device architecture for debug builds.", "default": false } ] }, { "name": "setup-ios-permissions", "description": "Update react-native-permissions podspec to link additional permission handlers." } ], "assets": [ "D:\\AwesomeProject\\node_modules\\@ant-design\\icons-react-native\\fonts\\antfill.ttf", "D:\\AwesomeProject\\node_modules\\@ant-design\\icons-react-native\\fonts\\antoutline.ttf" ], "healthChecks": [], "platforms": { "ios": {}, "android": {} }, "project": { "ios": { "sourceDir": "D:\\AwesomeProject\\ios", "folder": "D:\\AwesomeProject", "pbxprojPath": "D:\\AwesomeProject\\ios\\AwesomeProject.xcodeproj\\project.pbxproj", "podfile": "D:\\AwesomeProject\\ios\\Podfile", "podspecPath": null, "projectPath": "D:\\AwesomeProject\\ios\\AwesomeProject.xcodeproj", "projectName": "AwesomeProject.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [], "scriptPhases": [] }, "android": { "sourceDir": "D:\\AwesomeProject\\android", "isFlat": true, "folder": "D:\\AwesomeProject", "stringsPath": "D:\\AwesomeProject\\android\\app\\src\\main\\res\\values\\strings.xml", "manifestPath": "D:\\AwesomeProject\\android\\app\\src\\main\\AndroidManifest.xml", "buildGradlePath": "D:\\AwesomeProject\\android\\build.gradle", "settingsGradlePath": "D:\\AwesomeProject\\android\\settings.gradle", "assetsPath": "D:\\AwesomeProject\\android\\app\\src\\main\\assets", "mainFilePath": "D:\\AwesomeProject\\android\\app\\src\\main\\java\\com\\awesomeproject\\MainApplication.java", "packageName": "com.awesomeproject", "packageFolder": "com\\awesomeproject", "appName": "app" } } } D:\AwesomeProject>
最新发布
08-15
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值