java - Flutter Android构建失败

标签 java android flutter gradle

我不得不重建我的开发环境,现在我无法使我 flutter 朔迷离的android java代码来构建。
我还尝试删除了一些警告,因此更改了两个gradle选项。
主要变化是从R8转到D8

android.enableD8=true
码:
package com.bsutton.sounds;

import android.Manifest;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.media.MediaPlayer;
import android.media.MediaRecorder;
import android.media.AudioManager;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.RemoteException;
import android.os.SystemClock;
import android.support.v4.media.MediaBrowserCompat;
import android.support.v4.media.MediaMetadataCompat;
import android.support.v4.media.session.MediaControllerCompat;
import android.support.v4.media.session.MediaSessionCompat;
import android.support.v4.media.session.PlaybackStateCompat;
import android.util.Log;

import androidx.annotation.NonNull;
import androidx.arch.core.util.Function;
import androidx.core.app.ActivityCompat;

import android.media.AudioFocusRequest;

import java.io.*;

import org.json.JSONException;
import org.json.JSONObject;

import java.io.File;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.embedding.engine.plugins.FlutterPlugin;
mport io.flutter.embedding.engine.plugins.activity.ActivityAware;
import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding;
import io.flutter.plugin.common.BinaryMessenger;
import io.flutter.plugin.common.MethodCall;
gradlew build

> Task :compileDebugJavaWithJavac FAILED
/home/bsutton/git/sounds/android/src/main/java/com/bsutton/sounds/ShadePlayer.java:63: error: package io.flutter.embedding.engine does not exist
import io.flutter.embedding.engine.FlutterEngine;

您可以在此处查看该项目:
https://github.com/bsutton/sounds
我的build.gradle
group 'com.bsutton.sounds'
version '1.0-SNAPSHOT'


buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.0'
    }
}

rootProject.allprojects {
    repositories {
        google()
        jcenter()
    }
}

apply plugin: 'com.android.library'

android {
   
    compileSdkVersion 28

    defaultConfig {
        minSdkVersion 16 //24
    }
    lintOptions {
        disable 'InvalidPackage'
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}


dependencies {
    implementation 'androidx.core:core:1.0.0'
    implementation 'androidx.media:media:1.0.0'
    implementation 'androidx.appcompat:appcompat:1.1.0'

}

gradle.properties
org.gradle.jvmargs=-Xmx1536M
android.enableD8=true
android.useAndroidX=true
我已经尝试升级到最新的gradle版本。
我的Java 11确实有问题,但是我更改了路径以指向Java 8
java -version
openjdk version "1.8.0_252"OpenJDK Runtime Environment (build 1.8.0_252-8u252-b09-1ubuntu1-b09)OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)

flutter 医生
flutter doctor -v
[✓] Flutter (Channel stable, v1.17.4, on Linux, locale en_AU.UTF-8)    • Flutter version 1.17.4 at /home/bsutton/apps/flutter
    • Framework revision 1ad9baa8b9 (8 days ago), 2020-06-17 14:41:16 -0700    • Engine revision ee76268252    • Dart version 2.8.4
 [✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /home/bsutton/Android/Sdk    • Platform android-30, build-tools 30.0.0    • Java binary at: /home/bsutton/apps/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)    • All Android licenses accepted.
[✓] Android Studio (version 4.0)
    • Android Studio at /home/bsutton/apps/android-studio
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[!] Connected device
    ! No devices available

! Doctor found issues in 1 category.

最佳答案

导入io.flutter.embedding.engine.FlutterEngine可能是解决方案。

关于java - Flutter Android构建失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62587406/

相关文章:

java - 如何在 IntelliJ 中导入库

java - ArrayList方法添加错误

android - 是否可以在 Android 设备上要求外部存储

android - 将 JAR 库包含到 android 项目并从中启动 Activity

Android 无法在屏幕上显示所有图像?

flutter - 无法导航到下一页PageView

java - XML 不会显示保存的 TimePicker 数据 (CurrentHour)

java - 如何使用 JDBC 从 Mysql 中以正确的编码检索数据

flutter - 有没有办法向 map 的 Mapbox 添加自定义图标?

google-maps - 迭代标记 Google Flutter map