android - 如何在 jetpack compose 中使用来自 URI 的 Coil 加载图像

标签 android android-jetpack-compose coil

我正在使用最新版本的 Coil:

实现(“io.coil-kt:coil-compose:2.0.0-rc01”)

我想将条形码标签图像加载到我的 Jetpack Compose 文件中,如下所示:

Box(modifier = Modifier.background(Color.DarkGray).fillMaxSize()) {
    AsyncImage(
        model = ImageRequest.Builder(LocalContext.current)
            .data("https://www.researchgate.net/profile/Adnan-Ghaffar/publication/313103370/figure/fig3/AS:456489858015234@1485847071322/An-example-of-barcode.png")
            .crossfade(true)
            .build(),
        contentDescription = "barcode image",
        contentScale = ContentScale.Crop,
        modifier = Modifier
    )

}

这工作正常,当我尝试从如下所示的 URI 加载图像时出现问题:

http://api.labelary.com/v1/printers/8dpmm/labels/4x6/0/^xa^cfa,50^fo100,100^fdHello World^fs^xz

但它不起作用,例如我尝试过的代码:

Box(modifier = Modifier.background(Color.DarkGray).fillMaxSize()) {
    AsyncImage(
        model = ImageRequest.Builder(LocalContext.current)
            .data("http://api.labelary.com/v1/printers/8dpmm/labels/4x6/0/^xa^cfa,50^fo100,100^fdHello World^fs^xz")
            .crossfade(true)
            .build(),
        contentDescription = "barcode image",
        contentScale = ContentScale.Crop,
        modifier = Modifier
    )
}

有关如何在 labelary 上创建标签 .png 的更多信息

最佳答案

根据Network security configuration ,我认为这是HTTP地址,

创建文件 res/xml/network_security_config.xml:

<?xml version ="1.0" encoding ="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true" />
</network-security-config>

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:networkSecurityConfig="@xml/network_security_config"
        ...>
        ...
    </application>
</manifest>

关于android - 如何在 jetpack compose 中使用来自 URI 的 Coil 加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71344161/

相关文章:

android - 需要我的 android 应用程序的设计建议

android - 如何知道当前是否正在渲染可组合项(可组合项不在延迟可组合项内)?

android - 如何使用 Coil 将图像文件加载到 Jetpack Compose Image

android-jetpack-compose - 使用 Compose Coil 检测未找到图像的情况

android - Laggy 懒惰专栏 Android Compose

java - proguard 是否将所有枚举转换为 int 或需要为此配置

android - 在 Android BLE 中处理指示而不是通知

android - 我可以为可组合函数切换状态变量吗?

java - 自定义翻译动画无法正常工作

android - 如何强制jetpack compose重组?