react-native/local-cli
gengjiawen 9b9b6c845e Inline and fix proguard rules
Summary:
The original proguard rules are put in the template, which is not very convenient and easy to get wrong. Because new rules get put, people also has two copy paste the rule. And there are also existing project import react native as a dependency. So the best way to  keep a android library project proguard rule is to manage the rule itself, using `consumerProguardFiles` like [dagger](46baef6d96/butterknife/build.gradle (L9)) and other android library project.

<!--
  Required: Write your motivation here.
  If this PR fixes an issue, type "Fixes #issueNumber" to automatically close the issue when the PR is merged.
-->

Use RNTester to build the release flavor (now it has bugs https://github.com/facebook/react-native/issues/18460, I keep my change in local for now), after build success, run to check if crash.

In the process, I also fix https://github.com/facebook/react-native/issues/12994 and https://github.com/facebook/react-native/issues/6624 by adding the following to proguard rules
```proguard
-keep,includedescriptorclasses class com.facebook.react.bridge.** { *; }
```

<!--
  Does this PR require a documentation change?
  Create a PR at https://github.com/facebook/react-native-website and add a link to it here.
-->

[ANDROID] [ENHANCEMENT and BUGFIX] [Proguard rules] - inline and fix proguard rules .

<!--
  **INTERNAL and MINOR tagged notes will not be included in the next version's final release notes.**

    CATEGORY
  [----------]      TYPE
  [ CLI      ] [-------------]    LOCATION
  [ DOCS     ] [ BREAKING    ] [-------------]
  [ GENERAL  ] [ BUGFIX      ] [ {Component} ]
  [ INTERNAL ] [ ENHANCEMENT ] [ {Filename}  ]
  [ IOS      ] [ FEATURE     ] [ {Directory} ]   |-----------|
  [ ANDROID  ] [ MINOR       ] [ {Framework} ] - | {Message} |
  [----------] [-------------] [-------------]   |-----------|

 EXAMPLES:

 [IOS] [BREAKING] [FlatList] - Change a thing that breaks other things
 [ANDROID] [BUGFIX] [TextInput] - Did a thing to TextInput
 [CLI] [FEATURE] [local-cli/info/info.js] - CLI easier to do things with
 [DOCS] [BUGFIX] [GettingStarted.md] - Accidentally a thing/word
 [GENERAL] [ENHANCEMENT] [Yoga] - Added new yoga thing/position
 [INTERNAL] [FEATURE] [./scripts] - Added thing to script that nobody will see
-->
Closes https://github.com/facebook/react-native/pull/18461

Differential Revision: D7527533

Pulled By: hramos

fbshipit-source-id: 447dbc16983bcfb597187b40c1be3987a8c5a832
2018-04-05 17:34:53 -07:00
..
__mocks__ Update license headers for MIT license 2018-02-16 18:31:53 -08:00
__tests__ @allow-large-files Upgrade xplat/js to Flow v0.66 2018-02-16 20:24:57 -08:00
bundle Adds an experimental hook for custom resolutions 2018-04-05 09:00:04 -07:00
core Update additional license headers 2018-03-08 12:10:14 -08:00
dependencies Remove optional parameter from server and enforce empty list everywhere 2018-03-01 05:33:05 -08:00
eject Update license headers for MIT license 2018-02-16 18:31:53 -08:00
generator Update license headers for MIT license 2018-02-16 18:31:53 -08:00
info Update license headers for MIT license 2018-02-16 18:31:53 -08:00
init Update license headers for MIT license 2018-02-16 18:31:53 -08:00
install Update license headers for MIT license 2018-02-16 18:31:53 -08:00
library Use sync fs.mkdir 2018-02-25 21:49:28 -08:00
link While linking plugin ask for params only once 2018-03-20 14:49:55 -07:00
logAndroid Update license headers for MIT license 2018-02-16 18:31:53 -08:00
logIOS Update license headers for MIT license 2018-02-16 18:31:53 -08:00
runAndroid Update license headers for MIT license 2018-02-16 18:31:53 -08:00
runIOS Xcode 9 supports running multiple simulators 2018-02-27 14:11:00 -08:00
server Adds an experimental hook for custom resolutions 2018-04-05 09:00:04 -07:00
templates Inline and fix proguard rules 2018-04-05 17:34:53 -07:00
upgrade Update license headers for MIT license 2018-02-16 18:31:53 -08:00
util Fix #17610, Add fixtures to metro blacklist 2018-02-16 20:48:15 -08:00
.npmignore npmignore: ignore tests and fixtures 2018-02-27 08:42:14 -08:00
cli.js Update license headers for MIT license 2018-02-16 18:31:53 -08:00
cliEntry.js Update license headers for MIT license 2018-02-16 18:31:53 -08:00
commands.js Update license headers for MIT license 2018-02-16 18:31:53 -08:00
setup_env.bat Update license headers for MIT license 2018-02-16 18:31:53 -08:00
setup_env.sh Update license headers for MIT license 2018-02-16 18:31:53 -08:00
wrong-react-native.js Update license headers for MIT license 2018-02-16 18:31:53 -08:00