Ignite: Android crashes immediately in signed APK release build

Created on 27 Jun 2017  路  19Comments  路  Source: infinitered/ignite

Hey there! Ignite CLI seems to be having a problem, eh?


What's going on?

Hello! I filed a ticket in the Redux repository, but as I looked deeper into it, I think it might be more of an Ignite issue. The original Redux issue is https://github.com/reactjs/redux/issues/2477 but I will repost below.

The app works fine when I run in dev mode connecting to my local React Native JS bundle server. But, when I do an npm run android:install to make a signed APK and install, this new version dies immediately. The error is:

06-27 13:52:32.618 16961-16990/? E/ReactNativeJS: undefined is not a function (evaluating '(0,l.combineReducers)({github:r(851).reducer,login:r(852).reducer,search:r(905).reducer})')
06-27 13:52:32.618 16961-16991/? E/AndroidRuntime: FATAL EXCEPTION: mqt_native_modules
                                                   Process: com.johntest, PID: 16961
                                                   com.facebook.react.common.JavascriptException: undefined is not a function (evaluating '(0,l.combineReducers)({github:r(851).reducer,login:r(852).reducer,search:r(905).reducer})'), stack:
                                                   default@691:231
                                                   <unknown>@913:672
                                                   o@2:565
                                                   i@2:348
                                                   t@2:210
                                                   <unknown>@12:45
                                                   o@2:565
                                                   i@2:278
                                                   t@2:210
                                                   global code@1443:9

                                                       at com.facebook.react.modules.core.ExceptionsManagerModule.showOrThrowError(ExceptionsManagerModule.java:99)
                                                       at com.facebook.react.modules.core.ExceptionsManagerModule.reportFatalException(ExceptionsManagerModule.java:83)
                                                       at java.lang.reflect.Method.invoke(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:372)
                                                       at com.facebook.react.cxxbridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
                                                       at com.facebook.react.cxxbridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:162)
                                                       at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
                                                       at android.os.Handler.handleCallback(Handler.java:739)
                                                       at android.os.Handler.dispatchMessage(Handler.java:95)
                                                       at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31)
                                                       at android.os.Looper.loop(Looper.java:145)
                                                       at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:199)
                                                       at java.lang.Thread.run(Thread.java:818)

Though recently, through debugging and cleaning and building, I no longer see this in the Android Studio "Android Monitor" output, but rather the more traditional red React Native error. This is new since I filed the ticket in the Redux repo. Any advice for how to get a signed APK running on a hardware device is greatly appreciated.

How can I disable the github, login, and search reducers? I tried commenting them out in App/redux/index.js (I had to change the redux folder to lowercase to get around a build crash).


Steps to reproduce
Created a signed APK release and install on Android hardware device. Attempt to launch.


ignite doctor results:

System
  platform           darwin
  arch               x64
  cpu                4 cores                                              Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz
  directory          /Users/johndane/projects/teamcoco/react-native-app

JavaScript
  node               8.1.1        /usr/local/bin/node
  npm                5.0.4        /usr/local/bin/npm
  yarn               0.23.2       /usr/local/bin/yarn

React Native
  react-native-cli   2.0.1
  app rn version     0.45.1

Ignite
  ignite             2.0.0-beta.8   /usr/local/bin/ignite

Android
  java               1.8.0_112-release   /usr/bin/java
  android home       -                   /Users/johndane/Library/Android/sdk

iOS
  xcode              8.3.3
more info needed question

Most helpful comment

When i run command gradlew assembleRelease then it show's me below error please give me solutions immediately?????/

[Fatal Error] :3:214: The value of attribute "name" associated with an element type "item" must not contain the '<' character.
Could not read C:\Users\gopi\AppData\Local\Android\Sdk\platform-tools\api\annotations.zip
java.io.IOException: Could not parse XML from android/accounts/annotations.xml
at com.android.tools.lint.ExternalAnnotationRepository$AnnotationsDatabase.initializePackage(ExternalAnnotationRepository.java:906)
at com.android.tools.lint.ExternalAnnotationRepository$AnnotationsDatabase.initializeFromJar(ExternalAnnotationRepository.java:849)
at com.android.tools.lint.ExternalAnnotationRepository$AnnotationsDatabase.(ExternalAnnotationRepository.java:597)
at com.android.tools.lint.ExternalAnnotationRepository.getDatabase(ExternalAnnotationRepository.java:242)
at com.android.tools.lint.ExternalAnnotationRepository.create(ExternalAnnotationRepository.java:181)
at com.android.tools.lint.ExternalAnnotationRepository.get(ExternalAnnotationRepository.java:162)
at com.android.tools.lint.psi.EcjPsiManager.getAnnotationRepository(EcjPsiManager.java:883)
at com.android.tools.lint.psi.EcjPsiJavaEvaluator.getAllAnnotations(EcjPsiJavaEvaluator.java:263)
at com.android.tools.lint.checks.SupportAnnotationDetector$CallVisitor.checkCall(SupportAnnotationDetector.java:1981)
at com.android.tools.lint.checks.SupportAnnotationDetector$CallVisitor.visitCallExpression(SupportAnnotationDetector.java:1966)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitCallExpression(JavaPsiVisitor.java:1029)
at com.intellij.psi.JavaElementVisitor.visitMethodCallExpression(JavaElementVisitor.java:183)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitMethodCallExpression(JavaPsiVisitor.java:1021)
at com.android.tools.lint.client.api.JavaPsiVisitor$DelegatingPsiVisitor.visitMethodCallExpression(JavaPsiVisitor.java:1667)
at com.android.tools.lint.psi.EcjPsiMethodCallExpression.accept(EcjPsiMethodCallExpression.java:40)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitStatement(JavaElementVisitor.java:272)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitStatement(JavaPsiVisitor.java:1246)
at com.intellij.psi.JavaElementVisitor.visitReturnStatement(JavaElementVisitor.java:268)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitReturnStatement(JavaPsiVisitor.java:1235)
at com.android.tools.lint.psi.EcjPsiReturnStatement.accept(EcjPsiReturnStatement.java:44)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitCodeBlock(JavaElementVisitor.java:67)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitCodeBlock(JavaPsiVisitor.java:701)
at com.android.tools.lint.psi.EcjPsiCodeBlock.accept(EcjPsiCodeBlock.java:39)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitMethod(JavaElementVisitor.java:179)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitMethod(JavaPsiVisitor.java:1010)
at com.android.tools.lint.psi.EcjPsiMethod.accept(EcjPsiMethod.java:105)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitClass(JavaElementVisitor.java:55)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitClass(JavaPsiVisitor.java:667)
at com.intellij.psi.JavaElementVisitor.visitAnonymousClass(JavaElementVisitor.java:23)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitAnonymousClass(JavaPsiVisitor.java:578)
at com.android.tools.lint.psi.EcjPsiAnonymousClass.accept(EcjPsiAnonymousClass.java:54)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitExpression(JavaElementVisitor.java:103)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitExpression(JavaPsiVisitor.java:800)
at com.intellij.psi.JavaElementVisitor.visitCallExpression(JavaElementVisitor.java:187)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitCallExpression(JavaPsiVisitor.java:1032)
at com.intellij.psi.JavaElementVisitor.visitNewExpression(JavaElementVisitor.java:195)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitNewExpression(JavaPsiVisitor.java:1054)
at com.android.tools.lint.client.api.JavaPsiVisitor$DelegatingPsiVisitor.visitNewExpression(JavaPsiVisitor.java:1691)
at com.android.tools.lint.psi.EcjPsiNewExpression.accept(EcjPsiNewExpression.java:55)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitVariable(JavaElementVisitor.java:328)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitVariable(JavaPsiVisitor.java:1389)
at com.intellij.psi.JavaElementVisitor.visitField(JavaElementVisitor.java:119)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitField(JavaPsiVisitor.java:845)
at com.android.tools.lint.psi.EcjPsiField.accept(EcjPsiField.java:64)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitClass(JavaElementVisitor.java:55)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitClass(JavaPsiVisitor.java:667)
at com.android.tools.lint.psi.EcjPsiClass.accept(EcjPsiClass.java:642)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.PsiElementVisitor.visitFile(PsiElementVisitor.java:34)
at com.intellij.psi.JavaElementVisitor.visitJavaFile(JavaElementVisitor.java:336)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitJavaFile(JavaPsiVisitor.java:1411)
at com.android.tools.lint.psi.EcjPsiJavaFile.accept(EcjPsiJavaFile.java:111)
at com.android.tools.lint.client.api.JavaPsiVisitor$4.run(JavaPsiVisitor.java:327)
at com.android.tools.lint.EcjParser.runReadAction(EcjParser.java:1115)
at com.android.tools.lint.client.api.JavaPsiVisitor.visitFile(JavaPsiVisitor.java:321)
at com.android.tools.lint.client.api.LintDriver.visitJavaFiles(LintDriver.java:1571)
at com.android.tools.lint.client.api.LintDriver.checkJava(LintDriver.java:1551)
at com.android.tools.lint.client.api.LintDriver.runFileDetectors(LintDriver.java:1090)
at com.android.tools.lint.client.api.LintDriver.checkProject(LintDriver.java:935)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.java:454)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.java:395)
at com.android.tools.lint.LintCliClient.run(LintCliClient.java:131)
at com.android.build.gradle.internal.LintGradleClient.run(LintGradleClient.java:146)
at com.android.build.gradle.tasks.Lint.runLint(Lint.java:255)
at com.android.build.gradle.tasks.Lint.lintSingleVariant(Lint.java:224)
at com.android.build.gradle.tasks.Lint.lint(Lint.java:109)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:228)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:621)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:604)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:51)
at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:28)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:43)
at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:173)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:239)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:212)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:205)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:55)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:36)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:30)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:127)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
:app:transformClassesWithDexForRelease UP-TO-DATE

All 19 comments

Sounds like something is in dev for your package.json that should be in prod.

Though, you should:
Comment those reducers out in Sagas index. Can you verify they are not included there?

@GantMan I tried commenting their respective lines out of the root () { yield } call, and that results in normal successful behavior when running as a dev build. When ./gradlew clean then build for release, I still get that same exception (with slightly different line numbers) upon startup, instantly crashing the app.

06-28 11:48:24.963 22107-22135/? E/ReactNativeJS: Module AppRegistry is not a registered callable module (calling runApplication)
06-28 11:48:24.963 22107-22136/? E/AndroidRuntime: FATAL EXCEPTION: mqt_native_modules
                                                   Process: com.teamcoco, PID: 22107
                                                   com.facebook.react.common.JavascriptException: undefined is not a function (evaluating '(0,l.combineReducers)({github:r(862).reducer,login:r(863).reducer,search:r(917).reducer})'), stack:
                                                   default@703:231
                                                   <unknown>@936:662
                                                   o@2:565
                                                   i@2:348
                                                   t@2:210
                                                   <unknown>@12:45
                                                   o@2:565
                                                   i@2:278
                                                   t@2:210
                                                   global code@1470:9

                                                       at com.facebook.react.modules.core.ExceptionsManagerModule.showOrThrowError(ExceptionsManagerModule.java:99)
                                                       at com.facebook.react.modules.core.ExceptionsManagerModule.reportFatalException(ExceptionsManagerModule.java:83)
                                                       at java.lang.reflect.Method.invoke(Native Method)
                                                       at java.lang.reflect.Method.invoke(Method.java:372)
                                                       at com.facebook.react.bridge.BaseJavaModule$JavaMethod.invoke(BaseJavaModule.java:368)
                                                       at com.facebook.react.cxxbridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:138)
                                                       at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
                                                       at android.os.Handler.handleCallback(Handler.java:739)
                                                       at android.os.Handler.dispatchMessage(Handler.java:95)
                                                       at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31)
                                                       at android.os.Looper.loop(Looper.java:145)
                                                       at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:208)
                                                       at java.lang.Thread.run(Thread.java:818)

Here are the dependencies of the package.json:

  "dependencies": {
    "apisauce": "0.10.0",
    "format-json": "1.0.3",
    "graphql": "0.10.1",
    "graphql-relay": "0.5.1",
    "lodash": "4.17.2",
    "querystringify": "0.0.4",
    "ramda": "0.23.0",
    "react": "16.0.0-alpha.6",
    "react-native": "0.44.0",
    "react-native-animatable": "1.1.1",
    "react-native-config": "0.2.1",
    "react-native-device-info": "0.10.0",
    "react-native-drawer": "2.3.0",
    "react-native-fit-image": "1.4.8",
    "react-native-i18n": "1.0.0",
    "react-native-orientation": "git+https://[email protected]/yamill/react-native-orientation.git",
    "react-native-router-flux": "3.39.1",
    "react-native-vector-icons": "4.1.1",
    "react-native-video": "^1.0.0",
    "react-native-video-player": "0.6.1",
    "react-navigation": "1.0.0-beta.9",
    "react-redux": "5.0.2",
    "react-relay": "^1.0.0",
    "redux": "3.6.0",
    "redux-persist": "4.1.0",
    "redux-saga": "0.14.3",
    "reduxsauce": "0.4.1",
    "seamless-immutable": "7.0.1"
  },
  "devDependencies": {
    "ava": "^0.18.2",
    "babel-cli": "^6.14.0",
    "babel-core": "^6.13.2",
    "babel-eslint": "^7.1.1",
    "babel-loader": "^6.2.5",
    "babel-preset-es2015": "^6.18.0",
    "babel-plugin-module-resolver": "^3.0.0-beta.0",
    "babel-plugin-relay": "^1.0.0",
    "babel-preset-react": "^6.11.1",
    "babel-preset-stage-0": "^6.5.0",
    "babel-plugin-transform-runtime": "^6.12.0",
    "babel-runtime": "^6.11.6",
    "enzyme": "^2.6.0",
    "express": "^4.15.2",
    "express-graphql": "^0.6.4",
    "graphql-type-json": "0.1.4",
    "ignite-animatable": "^0.3.1",
    "ignite-dev-screens": "^2.0.0-beta.8",
    "ignite-i18n": "^0.1.1",
    "ignite-ir-boilerplate-2016": "^0.2.1",
    "ignite-vector-icons": "^0.2.1",
    "mockery": "^2.0.0",
    "nyc": "^10.1.2",
    "react-addons-test-utils": "^15.3.1",
    "react-dom": "15.4.0",
    "react-native-mock": "0.3.1",
    "react-test-renderer": "15.5.4",
    "reactotron-apisauce": "1.7.0",
    "reactotron-react-native": "1.7.0",
    "reactotron-redux": "1.11.2",
    "reactotron-redux-saga": "1.11.1",
    "relay-compiler": "^1.0.0",
    "snazzy": "6.0.0",
    "standard": "8.6.0"
  },

What is this code involving GitHub avatars? I definitely don't use this in my app, but can't find a way to comment out or remove it all without it causing crashing.

update: the issue also occurs on an iOS device. And I realized that when I said "Though recently, through debugging and cleaning and building, I no longer see this in the Android Studio "Android Monitor" output, but rather the more traditional red React Native error." it was because I changed the android debuggable flag to true, which replaces crashing with the red React Native error.

@johndanek - are you on our community slack? If so can you ping me on there? I'd love to possibly do a quick screen share.

link: http://community.infinite.red

Also, it looks like (from your code) you still have references to the github example code in index redux. Not sure why that would only show up in the APK.

@johndanek Not sure if it's related, but I noticed this issue when trying to build a signed APK from within Android Studio. It ended up not packaging the JS bundle. I added Fabric's Crashlytics to the app so I could get a stack trace and found out pretty quickly. yarn android:build worked for me (manually installing via adb install), though android:install looks like it includes that.

I'm also facing this issue. Is there any solution for this ? @GantMan @johndanek

When i run command gradlew assembleRelease then it show's me below error please give me solutions immediately?????/

[Fatal Error] :3:214: The value of attribute "name" associated with an element type "item" must not contain the '<' character.
Could not read C:\Users\gopi\AppData\Local\Android\Sdk\platform-tools\api\annotations.zip
java.io.IOException: Could not parse XML from android/accounts/annotations.xml
at com.android.tools.lint.ExternalAnnotationRepository$AnnotationsDatabase.initializePackage(ExternalAnnotationRepository.java:906)
at com.android.tools.lint.ExternalAnnotationRepository$AnnotationsDatabase.initializeFromJar(ExternalAnnotationRepository.java:849)
at com.android.tools.lint.ExternalAnnotationRepository$AnnotationsDatabase.(ExternalAnnotationRepository.java:597)
at com.android.tools.lint.ExternalAnnotationRepository.getDatabase(ExternalAnnotationRepository.java:242)
at com.android.tools.lint.ExternalAnnotationRepository.create(ExternalAnnotationRepository.java:181)
at com.android.tools.lint.ExternalAnnotationRepository.get(ExternalAnnotationRepository.java:162)
at com.android.tools.lint.psi.EcjPsiManager.getAnnotationRepository(EcjPsiManager.java:883)
at com.android.tools.lint.psi.EcjPsiJavaEvaluator.getAllAnnotations(EcjPsiJavaEvaluator.java:263)
at com.android.tools.lint.checks.SupportAnnotationDetector$CallVisitor.checkCall(SupportAnnotationDetector.java:1981)
at com.android.tools.lint.checks.SupportAnnotationDetector$CallVisitor.visitCallExpression(SupportAnnotationDetector.java:1966)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitCallExpression(JavaPsiVisitor.java:1029)
at com.intellij.psi.JavaElementVisitor.visitMethodCallExpression(JavaElementVisitor.java:183)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitMethodCallExpression(JavaPsiVisitor.java:1021)
at com.android.tools.lint.client.api.JavaPsiVisitor$DelegatingPsiVisitor.visitMethodCallExpression(JavaPsiVisitor.java:1667)
at com.android.tools.lint.psi.EcjPsiMethodCallExpression.accept(EcjPsiMethodCallExpression.java:40)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitStatement(JavaElementVisitor.java:272)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitStatement(JavaPsiVisitor.java:1246)
at com.intellij.psi.JavaElementVisitor.visitReturnStatement(JavaElementVisitor.java:268)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitReturnStatement(JavaPsiVisitor.java:1235)
at com.android.tools.lint.psi.EcjPsiReturnStatement.accept(EcjPsiReturnStatement.java:44)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitCodeBlock(JavaElementVisitor.java:67)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitCodeBlock(JavaPsiVisitor.java:701)
at com.android.tools.lint.psi.EcjPsiCodeBlock.accept(EcjPsiCodeBlock.java:39)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitMethod(JavaElementVisitor.java:179)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitMethod(JavaPsiVisitor.java:1010)
at com.android.tools.lint.psi.EcjPsiMethod.accept(EcjPsiMethod.java:105)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitClass(JavaElementVisitor.java:55)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitClass(JavaPsiVisitor.java:667)
at com.intellij.psi.JavaElementVisitor.visitAnonymousClass(JavaElementVisitor.java:23)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitAnonymousClass(JavaPsiVisitor.java:578)
at com.android.tools.lint.psi.EcjPsiAnonymousClass.accept(EcjPsiAnonymousClass.java:54)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitExpression(JavaElementVisitor.java:103)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitExpression(JavaPsiVisitor.java:800)
at com.intellij.psi.JavaElementVisitor.visitCallExpression(JavaElementVisitor.java:187)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitCallExpression(JavaPsiVisitor.java:1032)
at com.intellij.psi.JavaElementVisitor.visitNewExpression(JavaElementVisitor.java:195)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitNewExpression(JavaPsiVisitor.java:1054)
at com.android.tools.lint.client.api.JavaPsiVisitor$DelegatingPsiVisitor.visitNewExpression(JavaPsiVisitor.java:1691)
at com.android.tools.lint.psi.EcjPsiNewExpression.accept(EcjPsiNewExpression.java:55)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitVariable(JavaElementVisitor.java:328)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitVariable(JavaPsiVisitor.java:1389)
at com.intellij.psi.JavaElementVisitor.visitField(JavaElementVisitor.java:119)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitField(JavaPsiVisitor.java:845)
at com.android.tools.lint.psi.EcjPsiField.accept(EcjPsiField.java:64)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.JavaElementVisitor.visitClass(JavaElementVisitor.java:55)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitClass(JavaPsiVisitor.java:667)
at com.android.tools.lint.psi.EcjPsiClass.accept(EcjPsiClass.java:642)
at com.android.tools.lint.psi.EcjPsiSourceElement.acceptChildren(EcjPsiSourceElement.java:85)
at com.intellij.psi.JavaRecursiveElementVisitor.visitElement(JavaRecursiveElementVisitor.java:62)
at com.intellij.psi.PsiElementVisitor.visitFile(PsiElementVisitor.java:34)
at com.intellij.psi.JavaElementVisitor.visitJavaFile(JavaElementVisitor.java:336)
at com.android.tools.lint.client.api.JavaPsiVisitor$DispatchPsiVisitor.visitJavaFile(JavaPsiVisitor.java:1411)
at com.android.tools.lint.psi.EcjPsiJavaFile.accept(EcjPsiJavaFile.java:111)
at com.android.tools.lint.client.api.JavaPsiVisitor$4.run(JavaPsiVisitor.java:327)
at com.android.tools.lint.EcjParser.runReadAction(EcjParser.java:1115)
at com.android.tools.lint.client.api.JavaPsiVisitor.visitFile(JavaPsiVisitor.java:321)
at com.android.tools.lint.client.api.LintDriver.visitJavaFiles(LintDriver.java:1571)
at com.android.tools.lint.client.api.LintDriver.checkJava(LintDriver.java:1551)
at com.android.tools.lint.client.api.LintDriver.runFileDetectors(LintDriver.java:1090)
at com.android.tools.lint.client.api.LintDriver.checkProject(LintDriver.java:935)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.java:454)
at com.android.tools.lint.client.api.LintDriver.analyze(LintDriver.java:395)
at com.android.tools.lint.LintCliClient.run(LintCliClient.java:131)
at com.android.build.gradle.internal.LintGradleClient.run(LintGradleClient.java:146)
at com.android.build.gradle.tasks.Lint.runLint(Lint.java:255)
at com.android.build.gradle.tasks.Lint.lintSingleVariant(Lint.java:224)
at com.android.build.gradle.tasks.Lint.lint(Lint.java:109)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:228)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:621)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:604)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:51)
at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:28)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:43)
at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:173)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:239)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:212)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:205)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
at org.gradle.launcher.Main.doAction(Main.java:33)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:55)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:36)
at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:30)
at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:127)
at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
:app:transformClassesWithDexForRelease UP-TO-DATE

I am also facing the same issue. Is there any solution for this? @Gops1994 @codesinghanoop

problem solve after update my gradle version 4.6 latest and also update android project latest @kumarsathishc

FYI My "solution" was to create a blank React Native project without Ignite and start over from scratch :-/

Same issue..

Same issue here as well.

Can you folks open new issues with details on the specific errors you're getting and other related info?

Just for completeness it's a problem in the android build tools. See this issue https://issuetracker.google.com/issues/116182838

Same issue here

2019-01-14 09:56:12.981 13279-13302/? E/AndroidRuntime: FATAL EXCEPTION: mqt_native_modules
    Process: com.astrosupply1, PID: 13279
    java.lang.SecurityException: Looks like the app doesn't have the permission to access location.
    Add the following line to your app's AndroidManifest.xml:
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
        at com.facebook.react.modules.location.LocationModule.throwLocationPermissionMissing(LocationModule.java:234)
        at com.facebook.react.modules.location.LocationModule.startObserving(LocationModule.java:173)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
        at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:160)
        at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
        at android.os.Handler.handleCallback(Handler.java:790)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
        at android.os.Looper.loop(Looper.java:164)
        at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:192)
        at java.lang.Thread.run(Thread.java:764)
     Caused by: java.lang.SecurityException: "gps" location provider requires ACCESS_FINE_LOCATION permission.
        at android.os.Parcel.readException(Parcel.java:2004)
        at android.os.Parcel.readException(Parcel.java:1950)
        at android.location.ILocationManager$Stub$Proxy.requestLocationUpdates(ILocationManager.java:691)
        at android.location.LocationManager.requestLocationUpdates(LocationManager.java:888)
        at android.location.LocationManager.requestLocationUpdates(LocationManager.java:470)
        at com.facebook.react.modules.location.LocationModule.startObserving

It seems the View is not asking for permissions, however in the development mode it did.

Any solution, yet?

@hecmonn Can you open a new issue with a minimal reproducible app published? This issue is quite stale and I don't think the same issue as what you're experiencing.

I'm going to lock this thread; please open new issues with minimal repros so it's easier for us to debug.

Thank you!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

orozcojair picture orozcojair  路  3Comments

whalemare picture whalemare  路  3Comments

Kailash23 picture Kailash23  路  3Comments

GantMan picture GantMan  路  3Comments

lichao0817 picture lichao0817  路  3Comments