Когда я компилирую приложение Java (fx) для Android с использованием SoundPool, компилятор java говорит, что пакет android.media не существует

В Java-приложении для Android, сделанном в JavaFX под Eclipse Neon2, я хочу использовать класс Android Media SoundPool.

Для этого я добавил в путь сборки Java:

  • платформа android-sdks: android-25 (называется android.jar).

  • jfxdvk-8.60.8.jar

Затем, например, я создаю экземпляр SoundPool следующим образом:

import android.media.SounPool;

import android.media.MediaPlayer;

...
SoundPool sp = new SoundPool(MAX_STREAMS,AudioManager.STREAM_MUSIC,0);

Синтаксис правильный, и редактор Eclipse не замечает никаких ошибок.

Но при компиляции файла у меня две ошибки "пакет android.media не существует import android.media.AudioManager" и "пакет android.media не существует import android.media.SoundPool;", а затем, (это следствие), «не удается найти символы» в «AudioManager.STREAM_MUSIC» и в «новом SoundPool» кода предыдущей строки.

Я не понимаю этих ошибок, потому что я добавил в свой путь JavaBuild эту платформу android-sdks: android.jar (android-25) и редактор Eclipse может получить эти два импорта.

Заранее спасибо за ваш ответ


Дополнительная информация:

Ошибки, возникающие при компиляции java:

[sts] -----------------------------------------------------
[sts] Starting Gradle build for the following tasks: 
[sts]      androidInstall
[sts] -----------------------------------------------------
:validateManifest
:collectMultiDexComponents
:compileJavaC:\Users\pascal\workspaceNeon\JFX_withGluon_11.0gAvecSoundPoolKO\src\main\java\com\gluonapplication\GluonApplication.java:3: error: package android.media does not exist
import android.media.AudioManager;
                    ^
C:\Users\pascal\workspaceNeon\JFX_withGluon_11.0gAvecSoundPoolKO\src\main\java\com\gluonapplication\GluonApplication.java:4: error: package android.media does not exist
import android.media.SoundPool;
                    ^
C:\Users\pascal\workspaceNeon\JFX_withGluon_11.0gAvecSoundPoolKO\src\main\java\com\gluonapplication\GluonApplication.java:635: error: cannot find symbol
    static SoundPool androidSoundPoolApplication = null;

----------------------
Related code:
package com.gluonapplication;

import android.media.AudioManager;
import android.media.SoundPool;

import com.gluonhq.charm.down.Services; // line 3
import com.gluonhq.charm.down.plugins.AccelerometerService; // line 4

......

    final static int MAX_STREAMS = 10;
    static SoundPool androidSoundPoolApplication = null;  // line 635

И build.gradle:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'org.javafxports:jfxmobile-plugin:1.3.2'
    }
}

apply plugin: 'org.javafxports.jfxmobile'

repositories {
    jcenter()
    maven {
        url 'http://nexus.gluonhq.com/nexus/content/repositories/releases'
    }
}

mainClassName = 'com.gluonapplication.GluonApplication'

dependencies {
    compile 'com.gluonhq:charm:4.3.0'
}

jfxmobile {
     downConfig {
        version '3.2.0'
        plugins 'accelerometer', 'compass', 'device', 'orientation', 'storage', 'vibration', 'display', 'magnetometer', 'lifecycle', 'statusbar', 'position'
    }

android {
        applicationPackage = 'com.gluonapplication'
        manifest = 'src/android/AndroidManifest.xml'
        androidSdk = 'C:/Users/pascal/AppData/Local/Android/sdk'
        resDirectory = 'src/android/res'
        compileSdkVersion = '25'
        buildToolsVersion = '25.0.1'
      }

 ios {
         infoPList = file('src/ios/Default-Info.plist')
        forceLinkClasses = [
                'com.gluonhq.**.*',
                'javax.annotations.**.*',
                'javax.inject.**.*',
                'javax.json.**.*',
                'org.glassfish.json.**.*'
        ]
    }
}

person Pascal DUTOIT    schedule 21.03.2017    source источник
comment
Попробуйте добавить apply plugin: 'com.android.application' в свой файл градиента.   -  person Matt Clark    schedule 21.03.2017
comment
Почему вы добавляете Android API в основные источники? Его нужно включать только под исходники Android. Затем вам понадобится служба для ее вызова из основного класса, например здесь или здесь.   -  person José Pereda    schedule 21.03.2017