小编had*_*z30的帖子

Android不满意的错误

我们有这个加载本机库的应用程序,这个库提供了我们调用的本机方法.在某些手机(特别是较慢的手机)上,这会导致问题.每当(我认为)库仍在"加载"并且过早地调用方法时,就会发生UnsatisfiedLinkError.

有办法处理这个问题吗?就像检查库是否已经加载一样.

java-native-interface android native unsatisfiedlinkerror

7
推荐指数
1
解决办法
7692
查看次数

Gradle自动增量并重命名APK I/O错误

我正在尝试在Android Studio中为内部版本号进行自动增量.按照这个链接,它很有效.

现在我想使用versionName重命名apk.我也成功地做到了,正如我在app\build\outputs\apk目录中看到的那样,文件就在那里.

问题生成的apk和您看到"本地路径"的Android Studio的部分没有相同的文件名.

生成的apk名称为:MyAppsName-v1.0-64-debug.apk

它寻找的"本地路径":..\app\build\outputs\apk\MyAppsName-v1.0-60-debug.apk

因此,看到"本地路径不存在"的错误是有意义的.因为"MyAppsName-v1.0-60-debug.apk"不存在.

这是我的build.gradle的片段:

 def versionPropsFile = file('version.properties')

if (versionPropsFile.canRead()) {
    def Properties versionProps = new Properties()

    versionProps.load(new FileInputStream(versionPropsFile))
    def value = 0
    def runTasks = gradle.startParameter.taskNames
    if ('assemble' in runTasks || 'assembleRelease' in runTasks || 'aR' in runTasks) {
        value = 1;
    }

    def versionMajor = 1
    def versionMinor = 0
    def versionBuild = versionProps['VERSION_BUILD'].toInteger() + 1
    def version_Code = versionProps['VERSION_CODE'].toInteger() + value

    versionProps['VERSION_BUILD'] = versionBuild.toString()
    versionProps['VERSION_CODE'] = version_Code.toString()

    versionProps.store(versionPropsFile.newWriter(), null) …
Run Code Online (Sandbox Code Playgroud)

android android-studio build.gradle

5
推荐指数
0
解决办法
200
查看次数

将具有多个参数的AsyncTask转换为RxJava

我有多次调用AsyncTask我想转换为RxJava.AsyncTask代码有效,但我想在RxJava中探索如何做到这一点?

(顺便说一句,我知道标题很糟糕)

它能做什么:

  • 循环遍历MyImageButton(它只是一个POJO,而不是扩展ImageButton)列表
  • 在每个MyImageButton上,获取其当前位图(通过getDrawable())
  • 从URL获取图标.
  • 合并两个图像BitmapUtils.combine(...);
  • 将此新组合的位图分配给ImageButton

我如何将其转换为RxJava:

 for (MyImageButton myImageButton: myImageButtons) {
        final ImageButton imageButton = (ImageButton) findViewById(myImageButton.getImageButtonResId()); //getImageButtonResId holds a reference to some ImageButton
        final Bitmap bitmap = ((BitmapDrawable) imageButton.getDrawable()).getBitmap();

        new BindImageTask(imageButton, bitmap, myImageButton.getIconUrl()).execute();
 }
Run Code Online (Sandbox Code Playgroud)

这是BindImageTask:

private class BindImageTask extends AsyncTask<Void, Void, Bitmap> {

    private WeakReference<Bitmap> srcBitmapWeakReference;
    private WeakReference<ImageButton> imageButtonWeakReference;
    private String dstIconUrl;

    BindImageTask(ImageButton imageButton, Bitmap srcBitmap, String dstIconUrl) {

        srcBitmapWeakReference = new WeakReference<>(srcBitmap);
        imageButtonWeakReference = new WeakReference<>(imageButton);
        this.dstIconUrl = dstIconUrl;
    }

    @Override
    protected Bitmap doInBackground(Void... params) …
Run Code Online (Sandbox Code Playgroud)

android android-asynctask rx-java rx-android

1
推荐指数
1
解决办法
1061
查看次数