在Android Studio模拟器上运行React Native应用程序时出现问题

时间:2018-10-21 13:39:58

标签: android-studio react-native expo

我在Android Studio Emulator上获取本机应用程序时遇到了问题

在我发布问题陈述之前,这是我所拥有的

  • Java SE开发套件8

  • 已设置JAVA_HOME路径变量

  • npm install -g expo-cli

  • expo init AwesomeProject (示例应用程序在使用QR码扫描的EXPO应用程序中运行良好)

  • 纱线弹出AwesoneProject

  • 在Android Studio中打开Android项目

  • 在AVD Manager中创建的虚拟设备

  • 已安装Android SDK平台(7.0-8.1)。用于在7.0和我的android设备(在8.1上)上运行虚拟设备

  • build.gradle文件上的设置。请注意“所有依赖项”部分中的google()依赖项,这是为了摆脱一个错误。我不记得那是什么,解决方案是通过网络

  • build.gradle文件

  

buildscript {

repositories {
    jcenter()
    google()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.2.1'
} }
     

allprojects {       储存库{

    mavenLocal()
    jcenter()
    google()
    maven {
        url "$rootDir/../node_modules/react-native/android"
    }
} }

=========我看到的错误===========

  

警告:配置“编译”已过时,已被替换   带有“实现”和“ api”。

我不知道如何解决这个问题,所以我忽略了这个警告

  • npm运行android 出现以下错误

一些讨论表明,Expo cli遗漏了以下导致它的依赖项-“ react-native”:“ https://github.com/expo/react-native/archive/sdk-30.0.0.tar.gz”。 而且它没有给出index.js文件,可以链接吗?

任何建议如何使其运行? 非常感谢您的帮助。

Android Studio Erros

2 个答案:

答案 0 :(得分:0)

随着gradle 3的“编译”现在已过时。它已被“实施”代替。转到android / app / build.gradle,然后将依赖项对象内部的内容编译为实现,然后再次构建。

在这里What's the difference between implementation and compile in Gradle?

已回答了更详细的细分

答案 1 :(得分:0)

像这样更新您的build.gradle

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files

    }
}

allprojects {
    repositories {
        mavenLocal()
        jcenter()
        maven {
            url "https://maven.google.com"
        }
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
    }
}