相关疑难解决方法(0)

通过Retrofit 2上传图片时是否可以显示进度条?

Retrofit 2我目前正在使用,我想在我的服务器上传一些照片.我知道,旧版本使用TypedFile类进行上传.如果我们想要使用进度条,我们应该writeToTypedFile类中重写方法.

使用retrofit 2库时是否可以显示进度?

android retrofit2

69
推荐指数
5
解决办法
5万
查看次数

内容解析器返回错误的大小

我正在从图库中选择图像,并通过ContentResolverAPI 查询其大小,它返回29kb。

但是,当我使用adb通过adb检查文件时,文件大小ls -al为44kb

这是我查询图像尺寸的方法:

    private fun getFileInfo(contentResolver: ContentResolver, fileUri: Uri): Pair<String, Long>? {
    val projection = arrayOf(MediaStore.MediaColumns.DISPLAY_NAME, MediaStore.MediaColumns.SIZE)
    val metaCursor = contentResolver.query(fileUri, projection, null, null, null)
        metaCursor?.use {
            if (it.moveToFirst()) {
                val displayNameIndex = it.getColumnIndex(MediaStore.MediaColumns.DISPLAY_NAME)
                val sizeIndex = it.getColumnIndex(MediaStore.MediaColumns.SIZE)
                return Pair(it.getString(displayNameIndex), it.getLong(sizeIndex))
            }
    }
    return null
}
Run Code Online (Sandbox Code Playgroud)

我正在使用Oreo模拟器。我还通过模拟器的工具进行了检查,另一方面,文件浏览器显示为29kb,而文件详细信息显示为45kb。到底是怎么回事?

这是文件浏览器中的图像:

摘要

细节

另一个注意事项,每次在带有Android 26-Oreo模拟器的模拟器上使用相机应用程序时,上述情况都可以重现,但是对于Android 25-Nougat模拟器也可以。

我已经检查过,新的Document API也返回29kb

android android-contentresolver

5
推荐指数
2
解决办法
395
查看次数