Android上的Javafxports由于在状态200和#34;中不正确调用JPEG库而未能加载图像。

时间:2016-04-15 13:05:38

标签: mobile javafx javafxports gluon

当我使用IntelliJ运行应用程序时,图像可见但是当移植到Android(6.0& 4.4.2)时,它不是。 Image对象使用URL(网站)进行实例化。

logcat的

W/linker: /data/app/com.xxxx.xxxx.scan.application.scanner-2/lib/arm/libjavafx_iio.so: is missing DT_SONAME will use basename as a replacement: "libjavafx_iio.so"
W/System.err: java.io.IOException: Improper call to JPEG library in state 200
//##The error below is thrown at the new Image(url) operation
W/System.err:     at com.xxxx.xxxx.scan.application.scanner.controllers.ProductController.updateImageView(ProductController.java:117)

加载图片的方法

    private synchronized void updateImageView(ProductEntry product) {
        if (product.getExtraInfo() != null && product.getExtraInfo().size() > 0) {
            ExtraInfo extraInfo = product.getExtraInfo().get(0);
            figLabel.setText(extraInfo.getInfo());
            image = new Image(extraInfo.getUrl());
            imageView.fitHeightProperty().bind(pane.heightProperty());
            imageView.fitWidthProperty().bind(pane.widthProperty());
            imageView.setPreserveRatio(true);
//            imageView.setSmooth(true);
//            imageView.setCache(true);
            imageView.setImage(image);
        }
    }

的build.gradle

buildscript {
    repositories {
        jcenter()
        maven {
            url 'http://xxxx.xxxx.com:8080/artifactory/plugins-release'
        }
    }
    dependencies {
        classpath 'org.javafxports:jfxmobile-plugin:1.0.8'
        classpath "org.jfrog.buildinfo:build-info-extractor-gradle:+"
    }
}

apply plugin: 'org.javafxports.jfxmobile'
apply plugin: "com.jfrog.artifactory"

artifactory {
    contextUrl = "${artifactory_contextUrl}"
    publish {
        repository {
            repoKey = 'libs-release-local'
            maven = true
        }
    }
    resolve {
        repository {
            repoKey = 'libs-release'
            maven = true
        }
    }
}

repositories {
    jcenter()
    mavenLocal()
}

mainClassName = 'com.essers.pxl2016.scan.application.scanner.MainApplication'

dependencies {
    compile(group: 'com.essers.pxl2016', name: 'scan-server-definition', version: '0.0.1-SNAPSHOT')
    compile(group: 'com.xxxx.xxxx', name: 'client', version: '1.0-SNAPSHOT')
    compile('com.google.code.gson:gson:2.2.4')
    testCompile "junit:junit:4.12"
}

jfxmobile {
    javafxportsVersion = '8.60.7'
    ios {
        forceLinkClasses = ['com.xxxx.xxxx.scan.**.*']
    }
    android {
        applicationPackage = 'com.xxxx.xxxx.scan.application.scanner'
    }
}

test {
    exclude 'com/xxxx/xxxx/scan/application/scanner/**'
}

的src /主/资源/ java.custom.properties

# Solves crash when clicking the menu.
monocle.stackSize=128000

亲切的问候

1 个答案:

答案 0 :(得分:0)

问题的原因似乎是图像的文件大小。减小文件大小后显示图像。