React Native : Error: Duplicate resources - Android
up vote
0
down vote
favorite
I was trying to create a release apk file from Android but when I create a release apk with PNG image I'm getting Duplicate Resource error. Initially I thought this is happening because I made a mistake in the existing project but when I created a new project with a single Image component itself I'm getting the Duplicate Resource error. Here are the steps I followed
- Create a app -
react-native init demo - Create a assets folder in the project root folder.
- Add a
PNGimage inside the assets folder. - Now implement the
Imagecomponent with the abovePNGimage. Now bundle it using the cmd
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/Then generate release apk using
Generate Signed APKfromAndroid Studio.
This will throw the following error:
[drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
:app:mergeReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 22s
Note: When you generate a release apk without any PNG image you will not get any error, it will create you the release apk.
Here are the other files code.
App.js
import React, Component from 'react';
import Platform, StyleSheet, Image, View from 'react-native';
export default class App extends Component
render()
return (
<View style=styles.container>
<Image source=require('./assets/mario.png') />
</View>
);
const styles = StyleSheet.create(
container:
flex: 1
,
welcome:
fontSize: 20,
textAlign: 'center',
margin: 10,
,
instructions:
textAlign: 'center',
color: '#333333',
marginBottom: 5,
,
);
package.json
"name": "errorCheck",
"version": "0.0.1",
"private": true,
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
,
"dependencies":
"react": "16.6.0-alpha.8af6728",
"react-native": "0.57.4"
,
"devDependencies":
"babel-jest": "23.6.0",
"jest": "23.6.0",
"metro-react-native-babel-preset": "0.49.0",
"react-test-renderer": "16.6.0-alpha.8af6728"
,
"jest":
"preset": "react-native"
Any solution for this?
Update:
Here are the other details
classpath 'com.android.tools.build:gradle:3.1.4'
ext
buildToolsVersion = "27.0.3"
minSdkVersion = 16
compileSdkVersion = 27
targetSdkVersion = 26
supportLibVersion = "27.1.1"
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
Tried with Android Studio 3.0, 3.0.1, 3.1, 3.1.4 & 3.2
react-native
|
show 2 more comments
up vote
0
down vote
favorite
I was trying to create a release apk file from Android but when I create a release apk with PNG image I'm getting Duplicate Resource error. Initially I thought this is happening because I made a mistake in the existing project but when I created a new project with a single Image component itself I'm getting the Duplicate Resource error. Here are the steps I followed
- Create a app -
react-native init demo - Create a assets folder in the project root folder.
- Add a
PNGimage inside the assets folder. - Now implement the
Imagecomponent with the abovePNGimage. Now bundle it using the cmd
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/Then generate release apk using
Generate Signed APKfromAndroid Studio.
This will throw the following error:
[drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
:app:mergeReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 22s
Note: When you generate a release apk without any PNG image you will not get any error, it will create you the release apk.
Here are the other files code.
App.js
import React, Component from 'react';
import Platform, StyleSheet, Image, View from 'react-native';
export default class App extends Component
render()
return (
<View style=styles.container>
<Image source=require('./assets/mario.png') />
</View>
);
const styles = StyleSheet.create(
container:
flex: 1
,
welcome:
fontSize: 20,
textAlign: 'center',
margin: 10,
,
instructions:
textAlign: 'center',
color: '#333333',
marginBottom: 5,
,
);
package.json
"name": "errorCheck",
"version": "0.0.1",
"private": true,
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
,
"dependencies":
"react": "16.6.0-alpha.8af6728",
"react-native": "0.57.4"
,
"devDependencies":
"babel-jest": "23.6.0",
"jest": "23.6.0",
"metro-react-native-babel-preset": "0.49.0",
"react-test-renderer": "16.6.0-alpha.8af6728"
,
"jest":
"preset": "react-native"
Any solution for this?
Update:
Here are the other details
classpath 'com.android.tools.build:gradle:3.1.4'
ext
buildToolsVersion = "27.0.3"
minSdkVersion = 16
compileSdkVersion = 27
targetSdkVersion = 26
supportLibVersion = "27.1.1"
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
Tried with Android Studio 3.0, 3.0.1, 3.1, 3.1.4 & 3.2
react-native
did u run application using react-native run-android ?
– Lucefer
Nov 10 at 14:16
Yes @Lucefer I don't have any problem to run the app directly using react-native run-android only thing is when I generate the release apk I'm getting the above error
– Jeffrey Rajan
Nov 10 at 14:39
what is the android studio version you are using?
– K999
Nov 10 at 15:31
Its Android Studio 3.2.1 @FlorinDobre
– Jeffrey Rajan
Nov 10 at 16:31
Check my answer from here: stackoverflow.com/a/52767101/1979861 Use Android studio 3.1.4 Android 3.2 has problem at building RN 0.57 projects
– K999
Nov 10 at 17:44
|
show 2 more comments
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I was trying to create a release apk file from Android but when I create a release apk with PNG image I'm getting Duplicate Resource error. Initially I thought this is happening because I made a mistake in the existing project but when I created a new project with a single Image component itself I'm getting the Duplicate Resource error. Here are the steps I followed
- Create a app -
react-native init demo - Create a assets folder in the project root folder.
- Add a
PNGimage inside the assets folder. - Now implement the
Imagecomponent with the abovePNGimage. Now bundle it using the cmd
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/Then generate release apk using
Generate Signed APKfromAndroid Studio.
This will throw the following error:
[drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
:app:mergeReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 22s
Note: When you generate a release apk without any PNG image you will not get any error, it will create you the release apk.
Here are the other files code.
App.js
import React, Component from 'react';
import Platform, StyleSheet, Image, View from 'react-native';
export default class App extends Component
render()
return (
<View style=styles.container>
<Image source=require('./assets/mario.png') />
</View>
);
const styles = StyleSheet.create(
container:
flex: 1
,
welcome:
fontSize: 20,
textAlign: 'center',
margin: 10,
,
instructions:
textAlign: 'center',
color: '#333333',
marginBottom: 5,
,
);
package.json
"name": "errorCheck",
"version": "0.0.1",
"private": true,
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
,
"dependencies":
"react": "16.6.0-alpha.8af6728",
"react-native": "0.57.4"
,
"devDependencies":
"babel-jest": "23.6.0",
"jest": "23.6.0",
"metro-react-native-babel-preset": "0.49.0",
"react-test-renderer": "16.6.0-alpha.8af6728"
,
"jest":
"preset": "react-native"
Any solution for this?
Update:
Here are the other details
classpath 'com.android.tools.build:gradle:3.1.4'
ext
buildToolsVersion = "27.0.3"
minSdkVersion = 16
compileSdkVersion = 27
targetSdkVersion = 26
supportLibVersion = "27.1.1"
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
Tried with Android Studio 3.0, 3.0.1, 3.1, 3.1.4 & 3.2
react-native
I was trying to create a release apk file from Android but when I create a release apk with PNG image I'm getting Duplicate Resource error. Initially I thought this is happening because I made a mistake in the existing project but when I created a new project with a single Image component itself I'm getting the Duplicate Resource error. Here are the steps I followed
- Create a app -
react-native init demo - Create a assets folder in the project root folder.
- Add a
PNGimage inside the assets folder. - Now implement the
Imagecomponent with the abovePNGimage. Now bundle it using the cmd
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/Then generate release apk using
Generate Signed APKfromAndroid Studio.
This will throw the following error:
[drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
:app:mergeReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/src/main/res/drawable-mdpi/assets_mario.png [drawable-mdpi-v4/assets_mario] /Users/jeffreyrajan/Tutorials/RN/errorCheck/android/app/build/generated/res/react/release/drawable-mdpi-v4/assets_mario.png: Error: Duplicate resources
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 22s
Note: When you generate a release apk without any PNG image you will not get any error, it will create you the release apk.
Here are the other files code.
App.js
import React, Component from 'react';
import Platform, StyleSheet, Image, View from 'react-native';
export default class App extends Component
render()
return (
<View style=styles.container>
<Image source=require('./assets/mario.png') />
</View>
);
const styles = StyleSheet.create(
container:
flex: 1
,
welcome:
fontSize: 20,
textAlign: 'center',
margin: 10,
,
instructions:
textAlign: 'center',
color: '#333333',
marginBottom: 5,
,
);
package.json
"name": "errorCheck",
"version": "0.0.1",
"private": true,
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
,
"dependencies":
"react": "16.6.0-alpha.8af6728",
"react-native": "0.57.4"
,
"devDependencies":
"babel-jest": "23.6.0",
"jest": "23.6.0",
"metro-react-native-babel-preset": "0.49.0",
"react-test-renderer": "16.6.0-alpha.8af6728"
,
"jest":
"preset": "react-native"
Any solution for this?
Update:
Here are the other details
classpath 'com.android.tools.build:gradle:3.1.4'
ext
buildToolsVersion = "27.0.3"
minSdkVersion = 16
compileSdkVersion = 27
targetSdkVersion = 26
supportLibVersion = "27.1.1"
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
Tried with Android Studio 3.0, 3.0.1, 3.1, 3.1.4 & 3.2
react-native
react-native
edited Nov 11 at 6:32
asked Nov 10 at 13:59
Jeffrey Rajan
1,0721925
1,0721925
did u run application using react-native run-android ?
– Lucefer
Nov 10 at 14:16
Yes @Lucefer I don't have any problem to run the app directly using react-native run-android only thing is when I generate the release apk I'm getting the above error
– Jeffrey Rajan
Nov 10 at 14:39
what is the android studio version you are using?
– K999
Nov 10 at 15:31
Its Android Studio 3.2.1 @FlorinDobre
– Jeffrey Rajan
Nov 10 at 16:31
Check my answer from here: stackoverflow.com/a/52767101/1979861 Use Android studio 3.1.4 Android 3.2 has problem at building RN 0.57 projects
– K999
Nov 10 at 17:44
|
show 2 more comments
did u run application using react-native run-android ?
– Lucefer
Nov 10 at 14:16
Yes @Lucefer I don't have any problem to run the app directly using react-native run-android only thing is when I generate the release apk I'm getting the above error
– Jeffrey Rajan
Nov 10 at 14:39
what is the android studio version you are using?
– K999
Nov 10 at 15:31
Its Android Studio 3.2.1 @FlorinDobre
– Jeffrey Rajan
Nov 10 at 16:31
Check my answer from here: stackoverflow.com/a/52767101/1979861 Use Android studio 3.1.4 Android 3.2 has problem at building RN 0.57 projects
– K999
Nov 10 at 17:44
did u run application using react-native run-android ?
– Lucefer
Nov 10 at 14:16
did u run application using react-native run-android ?
– Lucefer
Nov 10 at 14:16
Yes @Lucefer I don't have any problem to run the app directly using react-native run-android only thing is when I generate the release apk I'm getting the above error
– Jeffrey Rajan
Nov 10 at 14:39
Yes @Lucefer I don't have any problem to run the app directly using react-native run-android only thing is when I generate the release apk I'm getting the above error
– Jeffrey Rajan
Nov 10 at 14:39
what is the android studio version you are using?
– K999
Nov 10 at 15:31
what is the android studio version you are using?
– K999
Nov 10 at 15:31
Its Android Studio 3.2.1 @FlorinDobre
– Jeffrey Rajan
Nov 10 at 16:31
Its Android Studio 3.2.1 @FlorinDobre
– Jeffrey Rajan
Nov 10 at 16:31
Check my answer from here: stackoverflow.com/a/52767101/1979861 Use Android studio 3.1.4 Android 3.2 has problem at building RN 0.57 projects
– K999
Nov 10 at 17:44
Check my answer from here: stackoverflow.com/a/52767101/1979861 Use Android studio 3.1.4 Android 3.2 has problem at building RN 0.57 projects
– K999
Nov 10 at 17:44
|
show 2 more comments
2 Answers
2
active
oldest
votes
up vote
2
down vote
accepted
After trying a lot of solutions I found only two solution is working. Here they are
Solution 1:
After bundling delete the drawable folder from Android Studio. You could find this in android/app/src/main/res/drawable
Solution 2:
In this solution you no need to delete any drawable folder. Just add the following code in the react.gradle file which you could find under node_modules/react-native/react.gradle path
doLast
def moveFunc = resSuffix ->
File originalDir = file("$buildDir/generated/res/react/release/drawable-$resSuffix");
if (originalDir.exists())
File destDir = file("$buildDir/../src/main/res/drawable-$resSuffix");
ant.move(file: originalDir, tofile: destDir);
moveFunc.curry("ldpi").call()
moveFunc.curry("mdpi").call()
moveFunc.curry("hdpi").call()
moveFunc.curry("xhdpi").call()
moveFunc.curry("xxhdpi").call()
moveFunc.curry("xxxhdpi").call()
For reference I will add the full react.gradle file code here
import org.apache.tools.ant.taskdefs.condition.Os
def config = project.hasProperty("react") ? project.react : ;
def cliPath = config.cliPath ?: "node_modules/react-native/local-cli/cli.js"
def bundleAssetName = config.bundleAssetName ?: "index.android.bundle"
def entryFile = config.entryFile ?: "index.android.js"
def bundleCommand = config.bundleCommand ?: "bundle"
def reactRoot = file(config.root ?: "../../")
def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"]
def bundleConfig = config.bundleConfig ? "$reactRoot/$config.bundleConfig" : null ;
afterEvaluate
android.applicationVariants.all def variant ->
// Create variant and target names
def targetName = variant.name.capitalize()
def targetPath = variant.dirName
// React js bundle directories
def jsBundleDir = file("$buildDir/generated/assets/react/$targetPath")
def resourcesDir = file("$buildDir/generated/res/react/$targetPath")
def jsBundleFile = file("$jsBundleDir/$bundleAssetName")
// Additional node and packager commandline arguments
def nodeExecutableAndArgs = config.nodeExecutableAndArgs ?: ["node"]
def extraPackagerArgs = config.extraPackagerArgs ?:
def currentBundleTask = tasks.create(
name: "bundle$targetNameJsAndAssets",
type: Exec)
// Expose a minimal interface on the application variant and the task itself:
variant.ext.bundleJsAndAssets = currentBundleTask
currentBundleTask.ext.generatedResFolders = files(resourcesDir).builtBy(currentBundleTask)
currentBundleTask.ext.generatedAssetsFolders = files(jsBundleDir).builtBy(currentBundleTask)
// registerGeneratedResFolders for Android plugin 3.x
if (variant.respondsTo("registerGeneratedResFolders"))
variant.registerGeneratedResFolders(currentBundleTask.generatedResFolders)
else
variant.registerResGeneratingTask(currentBundleTask)
variant.mergeResources.dependsOn(currentBundleTask)
// packageApplication for Android plugin 3.x
def packageTask = variant.hasProperty("packageApplication")
? variant.packageApplication
: tasks.findByName("package$targetName")
def resourcesDirConfigValue = config."resourcesDir$targetName"
if (resourcesDirConfigValue)
def currentCopyResTask = tasks.create(
name: "copy$targetNameBundledResources",
type: Copy)
group = "react"
description = "copy bundled resources into custom location for $targetName."
from resourcesDir
into file(resourcesDirConfigValue)
dependsOn(currentBundleTask)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentCopyResTask)
def currentAssetsCopyTask = tasks.create(
name: "copy$targetNameBundledJs",
type: Copy)
group = "react"
description = "copy bundled JS into $targetName."
if (config."jsBundleDir$targetName")
from jsBundleDir
into file(config."jsBundleDir$targetName")
else
into ("$buildDir/intermediates")
into ("assets/$targetPath")
from jsBundleDir
// Workaround for Android Gradle Plugin 3.2+ new asset directory
into ("merged_assets/$targetPath/merge$targetNameAssets/out")
from jsBundleDir
// mergeAssets must run first, as it clears the intermediates directory
dependsOn(variant.mergeAssets)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentAssetsCopyTask)
Credit:
ZeroCool00
mkchx
add a comment |
up vote
0
down vote
Use com.android.tools.build:gradle:3.1.4 It should work. RN 0.57 has problem with building in 3.2
This question is a possible duplicate of:
React Native Error: Duplicate resources, assets coming in some screens and not coming in others in android release APK
If it still doesn't work try to use RN 0.57.2, I am using it and creating releases works very well with these deps:
"dependencies":
"react": "16.5.0",
"react-native": "0.57.2",
.......
"devDependencies":
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/plugin-proposal-decorators": "^7.0.0",
"@babel/plugin-proposal-do-expressions": "^7.0.0",
"@babel/plugin-proposal-export-default-from": "^7.0.0",
"@babel/plugin-proposal-export-namespace-from": "^7.0.0",
"@babel/plugin-proposal-function-bind": "^7.0.0",
"@babel/plugin-proposal-function-sent": "^7.0.0",
"@babel/plugin-proposal-json-strings": "^7.0.0",
"@babel/plugin-proposal-logical-assignment-operators": "^7.0.0",
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0",
"@babel/plugin-proposal-numeric-separator": "^7.0.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.0.0",
"@babel/plugin-proposal-pipeline-operator": "^7.0.0",
"@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-syntax-import-meta": "^7.0.0",
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-flow": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-core": "^7.0.0-bridge.0",
"babel-preset-react-native-stage-0": "^1.0.1",
.....
Gradle deps:
classpath 'com.android.tools.build:gradle:3.1.4'
classpath "io.realm:realm-gradle-plugin:4.0.0"
App gradle
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "de.burda.buntede"
minSdkVersion 17
targetSdkVersion 27
Gradle wrapper props:
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
accepted
After trying a lot of solutions I found only two solution is working. Here they are
Solution 1:
After bundling delete the drawable folder from Android Studio. You could find this in android/app/src/main/res/drawable
Solution 2:
In this solution you no need to delete any drawable folder. Just add the following code in the react.gradle file which you could find under node_modules/react-native/react.gradle path
doLast
def moveFunc = resSuffix ->
File originalDir = file("$buildDir/generated/res/react/release/drawable-$resSuffix");
if (originalDir.exists())
File destDir = file("$buildDir/../src/main/res/drawable-$resSuffix");
ant.move(file: originalDir, tofile: destDir);
moveFunc.curry("ldpi").call()
moveFunc.curry("mdpi").call()
moveFunc.curry("hdpi").call()
moveFunc.curry("xhdpi").call()
moveFunc.curry("xxhdpi").call()
moveFunc.curry("xxxhdpi").call()
For reference I will add the full react.gradle file code here
import org.apache.tools.ant.taskdefs.condition.Os
def config = project.hasProperty("react") ? project.react : ;
def cliPath = config.cliPath ?: "node_modules/react-native/local-cli/cli.js"
def bundleAssetName = config.bundleAssetName ?: "index.android.bundle"
def entryFile = config.entryFile ?: "index.android.js"
def bundleCommand = config.bundleCommand ?: "bundle"
def reactRoot = file(config.root ?: "../../")
def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"]
def bundleConfig = config.bundleConfig ? "$reactRoot/$config.bundleConfig" : null ;
afterEvaluate
android.applicationVariants.all def variant ->
// Create variant and target names
def targetName = variant.name.capitalize()
def targetPath = variant.dirName
// React js bundle directories
def jsBundleDir = file("$buildDir/generated/assets/react/$targetPath")
def resourcesDir = file("$buildDir/generated/res/react/$targetPath")
def jsBundleFile = file("$jsBundleDir/$bundleAssetName")
// Additional node and packager commandline arguments
def nodeExecutableAndArgs = config.nodeExecutableAndArgs ?: ["node"]
def extraPackagerArgs = config.extraPackagerArgs ?:
def currentBundleTask = tasks.create(
name: "bundle$targetNameJsAndAssets",
type: Exec)
// Expose a minimal interface on the application variant and the task itself:
variant.ext.bundleJsAndAssets = currentBundleTask
currentBundleTask.ext.generatedResFolders = files(resourcesDir).builtBy(currentBundleTask)
currentBundleTask.ext.generatedAssetsFolders = files(jsBundleDir).builtBy(currentBundleTask)
// registerGeneratedResFolders for Android plugin 3.x
if (variant.respondsTo("registerGeneratedResFolders"))
variant.registerGeneratedResFolders(currentBundleTask.generatedResFolders)
else
variant.registerResGeneratingTask(currentBundleTask)
variant.mergeResources.dependsOn(currentBundleTask)
// packageApplication for Android plugin 3.x
def packageTask = variant.hasProperty("packageApplication")
? variant.packageApplication
: tasks.findByName("package$targetName")
def resourcesDirConfigValue = config."resourcesDir$targetName"
if (resourcesDirConfigValue)
def currentCopyResTask = tasks.create(
name: "copy$targetNameBundledResources",
type: Copy)
group = "react"
description = "copy bundled resources into custom location for $targetName."
from resourcesDir
into file(resourcesDirConfigValue)
dependsOn(currentBundleTask)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentCopyResTask)
def currentAssetsCopyTask = tasks.create(
name: "copy$targetNameBundledJs",
type: Copy)
group = "react"
description = "copy bundled JS into $targetName."
if (config."jsBundleDir$targetName")
from jsBundleDir
into file(config."jsBundleDir$targetName")
else
into ("$buildDir/intermediates")
into ("assets/$targetPath")
from jsBundleDir
// Workaround for Android Gradle Plugin 3.2+ new asset directory
into ("merged_assets/$targetPath/merge$targetNameAssets/out")
from jsBundleDir
// mergeAssets must run first, as it clears the intermediates directory
dependsOn(variant.mergeAssets)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentAssetsCopyTask)
Credit:
ZeroCool00
mkchx
add a comment |
up vote
2
down vote
accepted
After trying a lot of solutions I found only two solution is working. Here they are
Solution 1:
After bundling delete the drawable folder from Android Studio. You could find this in android/app/src/main/res/drawable
Solution 2:
In this solution you no need to delete any drawable folder. Just add the following code in the react.gradle file which you could find under node_modules/react-native/react.gradle path
doLast
def moveFunc = resSuffix ->
File originalDir = file("$buildDir/generated/res/react/release/drawable-$resSuffix");
if (originalDir.exists())
File destDir = file("$buildDir/../src/main/res/drawable-$resSuffix");
ant.move(file: originalDir, tofile: destDir);
moveFunc.curry("ldpi").call()
moveFunc.curry("mdpi").call()
moveFunc.curry("hdpi").call()
moveFunc.curry("xhdpi").call()
moveFunc.curry("xxhdpi").call()
moveFunc.curry("xxxhdpi").call()
For reference I will add the full react.gradle file code here
import org.apache.tools.ant.taskdefs.condition.Os
def config = project.hasProperty("react") ? project.react : ;
def cliPath = config.cliPath ?: "node_modules/react-native/local-cli/cli.js"
def bundleAssetName = config.bundleAssetName ?: "index.android.bundle"
def entryFile = config.entryFile ?: "index.android.js"
def bundleCommand = config.bundleCommand ?: "bundle"
def reactRoot = file(config.root ?: "../../")
def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"]
def bundleConfig = config.bundleConfig ? "$reactRoot/$config.bundleConfig" : null ;
afterEvaluate
android.applicationVariants.all def variant ->
// Create variant and target names
def targetName = variant.name.capitalize()
def targetPath = variant.dirName
// React js bundle directories
def jsBundleDir = file("$buildDir/generated/assets/react/$targetPath")
def resourcesDir = file("$buildDir/generated/res/react/$targetPath")
def jsBundleFile = file("$jsBundleDir/$bundleAssetName")
// Additional node and packager commandline arguments
def nodeExecutableAndArgs = config.nodeExecutableAndArgs ?: ["node"]
def extraPackagerArgs = config.extraPackagerArgs ?:
def currentBundleTask = tasks.create(
name: "bundle$targetNameJsAndAssets",
type: Exec)
// Expose a minimal interface on the application variant and the task itself:
variant.ext.bundleJsAndAssets = currentBundleTask
currentBundleTask.ext.generatedResFolders = files(resourcesDir).builtBy(currentBundleTask)
currentBundleTask.ext.generatedAssetsFolders = files(jsBundleDir).builtBy(currentBundleTask)
// registerGeneratedResFolders for Android plugin 3.x
if (variant.respondsTo("registerGeneratedResFolders"))
variant.registerGeneratedResFolders(currentBundleTask.generatedResFolders)
else
variant.registerResGeneratingTask(currentBundleTask)
variant.mergeResources.dependsOn(currentBundleTask)
// packageApplication for Android plugin 3.x
def packageTask = variant.hasProperty("packageApplication")
? variant.packageApplication
: tasks.findByName("package$targetName")
def resourcesDirConfigValue = config."resourcesDir$targetName"
if (resourcesDirConfigValue)
def currentCopyResTask = tasks.create(
name: "copy$targetNameBundledResources",
type: Copy)
group = "react"
description = "copy bundled resources into custom location for $targetName."
from resourcesDir
into file(resourcesDirConfigValue)
dependsOn(currentBundleTask)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentCopyResTask)
def currentAssetsCopyTask = tasks.create(
name: "copy$targetNameBundledJs",
type: Copy)
group = "react"
description = "copy bundled JS into $targetName."
if (config."jsBundleDir$targetName")
from jsBundleDir
into file(config."jsBundleDir$targetName")
else
into ("$buildDir/intermediates")
into ("assets/$targetPath")
from jsBundleDir
// Workaround for Android Gradle Plugin 3.2+ new asset directory
into ("merged_assets/$targetPath/merge$targetNameAssets/out")
from jsBundleDir
// mergeAssets must run first, as it clears the intermediates directory
dependsOn(variant.mergeAssets)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentAssetsCopyTask)
Credit:
ZeroCool00
mkchx
add a comment |
up vote
2
down vote
accepted
up vote
2
down vote
accepted
After trying a lot of solutions I found only two solution is working. Here they are
Solution 1:
After bundling delete the drawable folder from Android Studio. You could find this in android/app/src/main/res/drawable
Solution 2:
In this solution you no need to delete any drawable folder. Just add the following code in the react.gradle file which you could find under node_modules/react-native/react.gradle path
doLast
def moveFunc = resSuffix ->
File originalDir = file("$buildDir/generated/res/react/release/drawable-$resSuffix");
if (originalDir.exists())
File destDir = file("$buildDir/../src/main/res/drawable-$resSuffix");
ant.move(file: originalDir, tofile: destDir);
moveFunc.curry("ldpi").call()
moveFunc.curry("mdpi").call()
moveFunc.curry("hdpi").call()
moveFunc.curry("xhdpi").call()
moveFunc.curry("xxhdpi").call()
moveFunc.curry("xxxhdpi").call()
For reference I will add the full react.gradle file code here
import org.apache.tools.ant.taskdefs.condition.Os
def config = project.hasProperty("react") ? project.react : ;
def cliPath = config.cliPath ?: "node_modules/react-native/local-cli/cli.js"
def bundleAssetName = config.bundleAssetName ?: "index.android.bundle"
def entryFile = config.entryFile ?: "index.android.js"
def bundleCommand = config.bundleCommand ?: "bundle"
def reactRoot = file(config.root ?: "../../")
def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"]
def bundleConfig = config.bundleConfig ? "$reactRoot/$config.bundleConfig" : null ;
afterEvaluate
android.applicationVariants.all def variant ->
// Create variant and target names
def targetName = variant.name.capitalize()
def targetPath = variant.dirName
// React js bundle directories
def jsBundleDir = file("$buildDir/generated/assets/react/$targetPath")
def resourcesDir = file("$buildDir/generated/res/react/$targetPath")
def jsBundleFile = file("$jsBundleDir/$bundleAssetName")
// Additional node and packager commandline arguments
def nodeExecutableAndArgs = config.nodeExecutableAndArgs ?: ["node"]
def extraPackagerArgs = config.extraPackagerArgs ?:
def currentBundleTask = tasks.create(
name: "bundle$targetNameJsAndAssets",
type: Exec)
// Expose a minimal interface on the application variant and the task itself:
variant.ext.bundleJsAndAssets = currentBundleTask
currentBundleTask.ext.generatedResFolders = files(resourcesDir).builtBy(currentBundleTask)
currentBundleTask.ext.generatedAssetsFolders = files(jsBundleDir).builtBy(currentBundleTask)
// registerGeneratedResFolders for Android plugin 3.x
if (variant.respondsTo("registerGeneratedResFolders"))
variant.registerGeneratedResFolders(currentBundleTask.generatedResFolders)
else
variant.registerResGeneratingTask(currentBundleTask)
variant.mergeResources.dependsOn(currentBundleTask)
// packageApplication for Android plugin 3.x
def packageTask = variant.hasProperty("packageApplication")
? variant.packageApplication
: tasks.findByName("package$targetName")
def resourcesDirConfigValue = config."resourcesDir$targetName"
if (resourcesDirConfigValue)
def currentCopyResTask = tasks.create(
name: "copy$targetNameBundledResources",
type: Copy)
group = "react"
description = "copy bundled resources into custom location for $targetName."
from resourcesDir
into file(resourcesDirConfigValue)
dependsOn(currentBundleTask)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentCopyResTask)
def currentAssetsCopyTask = tasks.create(
name: "copy$targetNameBundledJs",
type: Copy)
group = "react"
description = "copy bundled JS into $targetName."
if (config."jsBundleDir$targetName")
from jsBundleDir
into file(config."jsBundleDir$targetName")
else
into ("$buildDir/intermediates")
into ("assets/$targetPath")
from jsBundleDir
// Workaround for Android Gradle Plugin 3.2+ new asset directory
into ("merged_assets/$targetPath/merge$targetNameAssets/out")
from jsBundleDir
// mergeAssets must run first, as it clears the intermediates directory
dependsOn(variant.mergeAssets)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentAssetsCopyTask)
Credit:
ZeroCool00
mkchx
After trying a lot of solutions I found only two solution is working. Here they are
Solution 1:
After bundling delete the drawable folder from Android Studio. You could find this in android/app/src/main/res/drawable
Solution 2:
In this solution you no need to delete any drawable folder. Just add the following code in the react.gradle file which you could find under node_modules/react-native/react.gradle path
doLast
def moveFunc = resSuffix ->
File originalDir = file("$buildDir/generated/res/react/release/drawable-$resSuffix");
if (originalDir.exists())
File destDir = file("$buildDir/../src/main/res/drawable-$resSuffix");
ant.move(file: originalDir, tofile: destDir);
moveFunc.curry("ldpi").call()
moveFunc.curry("mdpi").call()
moveFunc.curry("hdpi").call()
moveFunc.curry("xhdpi").call()
moveFunc.curry("xxhdpi").call()
moveFunc.curry("xxxhdpi").call()
For reference I will add the full react.gradle file code here
import org.apache.tools.ant.taskdefs.condition.Os
def config = project.hasProperty("react") ? project.react : ;
def cliPath = config.cliPath ?: "node_modules/react-native/local-cli/cli.js"
def bundleAssetName = config.bundleAssetName ?: "index.android.bundle"
def entryFile = config.entryFile ?: "index.android.js"
def bundleCommand = config.bundleCommand ?: "bundle"
def reactRoot = file(config.root ?: "../../")
def inputExcludes = config.inputExcludes ?: ["android/**", "ios/**"]
def bundleConfig = config.bundleConfig ? "$reactRoot/$config.bundleConfig" : null ;
afterEvaluate
android.applicationVariants.all def variant ->
// Create variant and target names
def targetName = variant.name.capitalize()
def targetPath = variant.dirName
// React js bundle directories
def jsBundleDir = file("$buildDir/generated/assets/react/$targetPath")
def resourcesDir = file("$buildDir/generated/res/react/$targetPath")
def jsBundleFile = file("$jsBundleDir/$bundleAssetName")
// Additional node and packager commandline arguments
def nodeExecutableAndArgs = config.nodeExecutableAndArgs ?: ["node"]
def extraPackagerArgs = config.extraPackagerArgs ?:
def currentBundleTask = tasks.create(
name: "bundle$targetNameJsAndAssets",
type: Exec)
// Expose a minimal interface on the application variant and the task itself:
variant.ext.bundleJsAndAssets = currentBundleTask
currentBundleTask.ext.generatedResFolders = files(resourcesDir).builtBy(currentBundleTask)
currentBundleTask.ext.generatedAssetsFolders = files(jsBundleDir).builtBy(currentBundleTask)
// registerGeneratedResFolders for Android plugin 3.x
if (variant.respondsTo("registerGeneratedResFolders"))
variant.registerGeneratedResFolders(currentBundleTask.generatedResFolders)
else
variant.registerResGeneratingTask(currentBundleTask)
variant.mergeResources.dependsOn(currentBundleTask)
// packageApplication for Android plugin 3.x
def packageTask = variant.hasProperty("packageApplication")
? variant.packageApplication
: tasks.findByName("package$targetName")
def resourcesDirConfigValue = config."resourcesDir$targetName"
if (resourcesDirConfigValue)
def currentCopyResTask = tasks.create(
name: "copy$targetNameBundledResources",
type: Copy)
group = "react"
description = "copy bundled resources into custom location for $targetName."
from resourcesDir
into file(resourcesDirConfigValue)
dependsOn(currentBundleTask)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentCopyResTask)
def currentAssetsCopyTask = tasks.create(
name: "copy$targetNameBundledJs",
type: Copy)
group = "react"
description = "copy bundled JS into $targetName."
if (config."jsBundleDir$targetName")
from jsBundleDir
into file(config."jsBundleDir$targetName")
else
into ("$buildDir/intermediates")
into ("assets/$targetPath")
from jsBundleDir
// Workaround for Android Gradle Plugin 3.2+ new asset directory
into ("merged_assets/$targetPath/merge$targetNameAssets/out")
from jsBundleDir
// mergeAssets must run first, as it clears the intermediates directory
dependsOn(variant.mergeAssets)
enabled currentBundleTask.enabled
packageTask.dependsOn(currentAssetsCopyTask)
Credit:
ZeroCool00
mkchx
edited Nov 12 at 14:53
answered Nov 12 at 10:46
Jeffrey Rajan
1,0721925
1,0721925
add a comment |
add a comment |
up vote
0
down vote
Use com.android.tools.build:gradle:3.1.4 It should work. RN 0.57 has problem with building in 3.2
This question is a possible duplicate of:
React Native Error: Duplicate resources, assets coming in some screens and not coming in others in android release APK
If it still doesn't work try to use RN 0.57.2, I am using it and creating releases works very well with these deps:
"dependencies":
"react": "16.5.0",
"react-native": "0.57.2",
.......
"devDependencies":
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/plugin-proposal-decorators": "^7.0.0",
"@babel/plugin-proposal-do-expressions": "^7.0.0",
"@babel/plugin-proposal-export-default-from": "^7.0.0",
"@babel/plugin-proposal-export-namespace-from": "^7.0.0",
"@babel/plugin-proposal-function-bind": "^7.0.0",
"@babel/plugin-proposal-function-sent": "^7.0.0",
"@babel/plugin-proposal-json-strings": "^7.0.0",
"@babel/plugin-proposal-logical-assignment-operators": "^7.0.0",
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0",
"@babel/plugin-proposal-numeric-separator": "^7.0.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.0.0",
"@babel/plugin-proposal-pipeline-operator": "^7.0.0",
"@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-syntax-import-meta": "^7.0.0",
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-flow": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-core": "^7.0.0-bridge.0",
"babel-preset-react-native-stage-0": "^1.0.1",
.....
Gradle deps:
classpath 'com.android.tools.build:gradle:3.1.4'
classpath "io.realm:realm-gradle-plugin:4.0.0"
App gradle
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "de.burda.buntede"
minSdkVersion 17
targetSdkVersion 27
Gradle wrapper props:
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
add a comment |
up vote
0
down vote
Use com.android.tools.build:gradle:3.1.4 It should work. RN 0.57 has problem with building in 3.2
This question is a possible duplicate of:
React Native Error: Duplicate resources, assets coming in some screens and not coming in others in android release APK
If it still doesn't work try to use RN 0.57.2, I am using it and creating releases works very well with these deps:
"dependencies":
"react": "16.5.0",
"react-native": "0.57.2",
.......
"devDependencies":
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/plugin-proposal-decorators": "^7.0.0",
"@babel/plugin-proposal-do-expressions": "^7.0.0",
"@babel/plugin-proposal-export-default-from": "^7.0.0",
"@babel/plugin-proposal-export-namespace-from": "^7.0.0",
"@babel/plugin-proposal-function-bind": "^7.0.0",
"@babel/plugin-proposal-function-sent": "^7.0.0",
"@babel/plugin-proposal-json-strings": "^7.0.0",
"@babel/plugin-proposal-logical-assignment-operators": "^7.0.0",
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0",
"@babel/plugin-proposal-numeric-separator": "^7.0.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.0.0",
"@babel/plugin-proposal-pipeline-operator": "^7.0.0",
"@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-syntax-import-meta": "^7.0.0",
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-flow": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-core": "^7.0.0-bridge.0",
"babel-preset-react-native-stage-0": "^1.0.1",
.....
Gradle deps:
classpath 'com.android.tools.build:gradle:3.1.4'
classpath "io.realm:realm-gradle-plugin:4.0.0"
App gradle
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "de.burda.buntede"
minSdkVersion 17
targetSdkVersion 27
Gradle wrapper props:
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
add a comment |
up vote
0
down vote
up vote
0
down vote
Use com.android.tools.build:gradle:3.1.4 It should work. RN 0.57 has problem with building in 3.2
This question is a possible duplicate of:
React Native Error: Duplicate resources, assets coming in some screens and not coming in others in android release APK
If it still doesn't work try to use RN 0.57.2, I am using it and creating releases works very well with these deps:
"dependencies":
"react": "16.5.0",
"react-native": "0.57.2",
.......
"devDependencies":
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/plugin-proposal-decorators": "^7.0.0",
"@babel/plugin-proposal-do-expressions": "^7.0.0",
"@babel/plugin-proposal-export-default-from": "^7.0.0",
"@babel/plugin-proposal-export-namespace-from": "^7.0.0",
"@babel/plugin-proposal-function-bind": "^7.0.0",
"@babel/plugin-proposal-function-sent": "^7.0.0",
"@babel/plugin-proposal-json-strings": "^7.0.0",
"@babel/plugin-proposal-logical-assignment-operators": "^7.0.0",
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0",
"@babel/plugin-proposal-numeric-separator": "^7.0.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.0.0",
"@babel/plugin-proposal-pipeline-operator": "^7.0.0",
"@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-syntax-import-meta": "^7.0.0",
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-flow": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-core": "^7.0.0-bridge.0",
"babel-preset-react-native-stage-0": "^1.0.1",
.....
Gradle deps:
classpath 'com.android.tools.build:gradle:3.1.4'
classpath "io.realm:realm-gradle-plugin:4.0.0"
App gradle
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "de.burda.buntede"
minSdkVersion 17
targetSdkVersion 27
Gradle wrapper props:
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
Use com.android.tools.build:gradle:3.1.4 It should work. RN 0.57 has problem with building in 3.2
This question is a possible duplicate of:
React Native Error: Duplicate resources, assets coming in some screens and not coming in others in android release APK
If it still doesn't work try to use RN 0.57.2, I am using it and creating releases works very well with these deps:
"dependencies":
"react": "16.5.0",
"react-native": "0.57.2",
.......
"devDependencies":
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/plugin-proposal-decorators": "^7.0.0",
"@babel/plugin-proposal-do-expressions": "^7.0.0",
"@babel/plugin-proposal-export-default-from": "^7.0.0",
"@babel/plugin-proposal-export-namespace-from": "^7.0.0",
"@babel/plugin-proposal-function-bind": "^7.0.0",
"@babel/plugin-proposal-function-sent": "^7.0.0",
"@babel/plugin-proposal-json-strings": "^7.0.0",
"@babel/plugin-proposal-logical-assignment-operators": "^7.0.0",
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0",
"@babel/plugin-proposal-numeric-separator": "^7.0.0",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.0.0",
"@babel/plugin-proposal-pipeline-operator": "^7.0.0",
"@babel/plugin-proposal-throw-expressions": "^7.0.0",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-syntax-import-meta": "^7.0.0",
"@babel/plugin-syntax-object-rest-spread": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-flow": "^7.0.0",
"@babel/register": "^7.0.0",
"babel-core": "^7.0.0-bridge.0",
"babel-preset-react-native-stage-0": "^1.0.1",
.....
Gradle deps:
classpath 'com.android.tools.build:gradle:3.1.4'
classpath "io.realm:realm-gradle-plugin:4.0.0"
App gradle
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "de.burda.buntede"
minSdkVersion 17
targetSdkVersion 27
Gradle wrapper props:
distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
edited Nov 11 at 11:09
answered Nov 10 at 17:47
K999
3,69912540
3,69912540
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
add a comment |
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
I tried with Android Studio 3.1 still I'm getting the same problem. Also this is not the duplicate question. I have updated my question with additional details as well.
– Jeffrey Rajan
Nov 11 at 5:57
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53239705%2freact-native-error-duplicate-resources-android%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
did u run application using react-native run-android ?
– Lucefer
Nov 10 at 14:16
Yes @Lucefer I don't have any problem to run the app directly using react-native run-android only thing is when I generate the release apk I'm getting the above error
– Jeffrey Rajan
Nov 10 at 14:39
what is the android studio version you are using?
– K999
Nov 10 at 15:31
Its Android Studio 3.2.1 @FlorinDobre
– Jeffrey Rajan
Nov 10 at 16:31
Check my answer from here: stackoverflow.com/a/52767101/1979861 Use Android studio 3.1.4 Android 3.2 has problem at building RN 0.57 projects
– K999
Nov 10 at 17:44