作者 周泳恩

Fix

1 -  
2 -[android]  
3 - target = Google Inc.:Google APIs:23  
4 -  
5 -[maven_repositories]  
6 - central = https://repo1.maven.org/maven2  
1 -module.exports = {  
2 - root: true,  
3 - extends: '@react-native-community',  
4 -};  
1 -[ignore]  
2 -; We fork some components by platform  
3 -.*/*[.]android.js  
4 -  
5 -; Ignore "BUCK" generated dirs  
6 -<PROJECT_ROOT>/\.buckd/  
7 -  
8 -; Ignore polyfills  
9 -node_modules/react-native/Libraries/polyfills/.*  
10 -  
11 -; These should not be required directly  
12 -; require from fbjs/lib instead: require('fbjs/lib/warning')  
13 -node_modules/warning/.*  
14 -  
15 -; Flow doesn't support platforms  
16 -.*/Libraries/Utilities/LoadingView.js  
17 -  
18 -[untyped]  
19 -.*/node_modules/@react-native-community/cli/.*/.*  
20 -  
21 -[include]  
22 -  
23 -[libs]  
24 -node_modules/react-native/interface.js  
25 -node_modules/react-native/flow/  
26 -  
27 -[options]  
28 -emoji=true  
29 -  
30 -esproposal.optional_chaining=enable  
31 -esproposal.nullish_coalescing=enable  
32 -  
33 -module.file_ext=.js  
34 -module.file_ext=.json  
35 -module.file_ext=.ios.js  
36 -  
37 -munge_underscores=true  
38 -  
39 -module.name_mapper='^react-native/\(.*\)$' -> '<PROJECT_ROOT>/node_modules/react-native/\1'  
40 -module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/Image/RelativeImageStub'  
41 -  
42 -suppress_type=$FlowIssue  
43 -suppress_type=$FlowFixMe  
44 -suppress_type=$FlowFixMeProps  
45 -suppress_type=$FlowFixMeState  
46 -  
47 -suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native\\(_ios\\)?_\\(oss\\|fb\\)[a-z,_]*\\)?)\\)  
48 -suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(<VERSION>\\)? *\\(site=[a-z,_]*react_native\\(_ios\\)?_\\(oss\\|fb\\)[a-z,_]*\\)?)\\)?:? #[0-9]+  
49 -suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError  
50 -  
51 -[lints]  
52 -sketchy-null-number=warn  
53 -sketchy-null-mixed=warn  
54 -sketchy-number=warn  
55 -untyped-type-import=warn  
56 -nonstrict-import=warn  
57 -deprecated-type=warn  
58 -unsafe-getters-setters=warn  
59 -unnecessary-invariant=warn  
60 -signature-verification-failure=warn  
61 -deprecated-utility=error  
62 -  
63 -[strict]  
64 -deprecated-type  
65 -nonstrict-import  
66 -sketchy-null  
67 -unclear-type  
68 -unsafe-getters-setters  
69 -untyped-import  
70 -untyped-type-import  
71 -  
72 -[version]  
73 -^0.122.0  
1 -module.exports = {  
2 - bracketSpacing: false,  
3 - jsxBracketSameLine: true,  
4 - singleQuote: true,  
5 - trailingComma: 'all',  
6 -};  
1 -/**  
2 - * Sample React Native App  
3 - * https://github.com/facebook/react-native  
4 - *  
5 - * @format  
6 - * @flow strict-local  
7 - */  
8 -  
9 -import React from 'react';  
10 -import {  
11 - SafeAreaView,  
12 - StyleSheet,  
13 - ScrollView,  
14 - View,  
15 - Text,  
16 - StatusBar,  
17 -} from 'react-native';  
18 -  
19 -import {  
20 - Header,  
21 - LearnMoreLinks,  
22 - Colors,  
23 - DebugInstructions,  
24 - ReloadInstructions,  
25 -} from 'react-native/Libraries/NewAppScreen';  
26 -  
27 -const App: () => React$Node = () => {  
28 - return (  
29 - <>  
30 - <StatusBar barStyle="dark-content" />  
31 - <SafeAreaView>  
32 - <ScrollView  
33 - contentInsetAdjustmentBehavior="automatic"  
34 - style={styles.scrollView}>  
35 - <Header />  
36 - {global.HermesInternal == null ? null : (  
37 - <View style={styles.engine}>  
38 - <Text style={styles.footer}>Engine: Hermes</Text>  
39 - </View>  
40 - )}  
41 - <View style={styles.body}>  
42 - <View style={styles.sectionContainer}>  
43 - <Text style={styles.sectionTitle}>Step One</Text>  
44 - <Text style={styles.sectionDescription}>  
45 - Edit <Text style={styles.highlight}>App.js</Text> to change this  
46 - screen and then come back to see your edits.  
47 - </Text>  
48 - </View>  
49 - <View style={styles.sectionContainer}>  
50 - <Text style={styles.sectionTitle}>See Your Changes</Text>  
51 - <Text style={styles.sectionDescription}>  
52 - <ReloadInstructions />  
53 - </Text>  
54 - </View>  
55 - <View style={styles.sectionContainer}>  
56 - <Text style={styles.sectionTitle}>Debug</Text>  
57 - <Text style={styles.sectionDescription}>  
58 - <DebugInstructions />  
59 - </Text>  
60 - </View>  
61 - <View style={styles.sectionContainer}>  
62 - <Text style={styles.sectionTitle}>Learn More</Text>  
63 - <Text style={styles.sectionDescription}>  
64 - Read the docs to discover what to do next:  
65 - </Text>  
66 - </View>  
67 - <LearnMoreLinks />  
68 - </View>  
69 - </ScrollView>  
70 - </SafeAreaView>  
71 - </>  
72 - );  
73 -};  
74 -  
75 -const styles = StyleSheet.create({  
76 - scrollView: {  
77 - backgroundColor: Colors.lighter,  
78 - },  
79 - engine: {  
80 - position: 'absolute',  
81 - right: 0,  
82 - },  
83 - body: {  
84 - backgroundColor: Colors.white,  
85 - },  
86 - sectionContainer: {  
87 - marginTop: 32,  
88 - paddingHorizontal: 24,  
89 - },  
90 - sectionTitle: {  
91 - fontSize: 24,  
92 - fontWeight: '600',  
93 - color: Colors.black,  
94 - },  
95 - sectionDescription: {  
96 - marginTop: 8,  
97 - fontSize: 18,  
98 - fontWeight: '400',  
99 - color: Colors.dark,  
100 - },  
101 - highlight: {  
102 - fontWeight: '700',  
103 - },  
104 - footer: {  
105 - color: Colors.dark,  
106 - fontSize: 12,  
107 - fontWeight: '600',  
108 - padding: 4,  
109 - paddingRight: 12,  
110 - textAlign: 'right',  
111 - },  
112 -});  
113 -  
114 -export default App;  
  1 +
  2 +# react-native-vode-ad
  3 +
  4 +## Getting started
  5 +
  6 +`$ npm install react-native-vode-ad --save`
  7 +
  8 +### Mostly automatic installation
  9 +
  10 +`$ react-native link react-native-vode-ad`
  11 +
  12 +### Manual installation
  13 +
  14 +
  15 +#### iOS
  16 +
  17 +1. In XCode, in the project navigator, right click `Libraries` ➜ `Add Files to [your project's name]`
  18 +2. Go to `node_modules` ➜ `react-native-vode-ad` and add `RNVodeAd.xcodeproj`
  19 +3. In XCode, in the project navigator, select your project. Add `libRNVodeAd.a` to your project's `Build Phases` ➜ `Link Binary With Libraries`
  20 +4. Run your project (`Cmd+R`)<
  21 +
  22 +#### Android
  23 +
  24 +1. Open up `android/app/src/main/java/[...]/MainActivity.java`
  25 + - Add `import vodeAd.RNVodeAdPackage;` to the imports at the top of the file
  26 + - Add `new RNVodeAdPackage()` to the list returned by the `getPackages()` method
  27 +2. Append the following lines to `android/settings.gradle`:
  28 + ```
  29 + include ':react-native-vode-ad'
  30 + project(':react-native-vode-ad').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vode-ad/android')
  31 + ```
  32 +3. Insert the following lines inside the dependencies block in `android/app/build.gradle`:
  33 + ```
  34 + compile project(':react-native-vode-ad')
  35 + ```
  36 +
  37 +
  38 +## Usage
  39 +```javascript
  40 +import RNVodeAd from 'react-native-vode-ad';
  41 +
  42 +// TODO: What to do with the module?
  43 +RNVodeAd;
  44 +```
  45 +
1 -/**  
2 - * @format  
3 - */  
4 -  
5 -import 'react-native';  
6 -import React from 'react';  
7 -import App from '../App';  
8 -  
9 -// Note: test renderer must be required after react-native.  
10 -import renderer from 'react-test-renderer';  
11 -  
12 -it('renders correctly', () => {  
13 - renderer.create(<App />);  
14 -});  
1 -{  
2 - "name": "react_native_view_vodeAd",  
3 - "displayName": "react_native_view_vodeAd"  
4 -}  
1 -module.exports = {  
2 - presets: ['module:metro-react-native-babel-preset'],  
3 -};  
1 -/**  
2 - * @format  
3 - */  
4 1
5 -import {AppRegistry} from 'react-native';  
6 -import App from './App';  
7 -import {name as appName} from './app.json'; 2 +import { NativeModules } from 'react-native';
8 3
9 -AppRegistry.registerComponent(appName, () => App); 4 +const { RNVodeAd } = NativeModules;
  5 +
  6 +export default RNVodeAd;
1 -/**  
2 - * Metro configuration for React Native  
3 - * https://github.com/facebook/react-native  
4 - *  
5 - * @format  
6 - */  
7 -  
8 -module.exports = {  
9 - transformer: {  
10 - getTransformOptions: async () => ({  
11 - transform: {  
12 - experimentalImportSupport: false,  
13 - inlineRequires: false,  
14 - },  
15 - }),  
16 - },  
17 -};  
  1 +
1 { 2 {
2 - "name": "react_native_view_vodeAd",  
3 - "version": "0.0.1",  
4 - "main": "app.js", 3 + "name": "react-native-vode-ad",
  4 + "version": "1.0.0",
  5 + "description": "",
  6 + "main": "index.js",
5 "scripts": { 7 "scripts": {
6 - "test": "npm test" 8 + "test": "echo \"Error: no test specified\" && exit 1"
  9 + },
  10 + "keywords": [
  11 + "react-native"
  12 + ],
  13 + "author": "",
  14 + "license": "",
  15 + "peerDependencies": {
  16 + "react-native": "^0.41.2"
7 } 17 }
8 } 18 }
此 diff 太大无法显示。