Biblioteca de Códigos QR em Kotlin

Gere Códigos QR com Kotlin

Os desenvolvedores Kotlin podem usar ZXing para geração e digitalização de códigos QR no Android. Funciona perfeitamente com Jetpack Compose e views Android tradicionais.

Instalação

Adicione ZXing ao seu projeto Android usando Gradle.

Gradle (Android)
implementation("com.google.zxing:core:3.5.3")
Gradle (with image)
implementation("com.google.zxing:core:3.5.3")
implementation("com.google.zxing:javase:3.5.3")

Gerar Códigos QR com Kotlin e ZXing

Exemplos de código usando ZXing em Kotlin para Android.

Generate QR Code Bitmap (Android)
import android.graphics.Bitmap
import com.google.zxing.BarcodeFormat
import com.google.zxing.MultiFormatWriter

fun generateQRCode(data: String, size: Int = 300): Bitmap {
    val matrix = MultiFormatWriter().encode(
        data, BarcodeFormat.QR_CODE, size, size
    )

    return Bitmap.createBitmap(size, size, Bitmap.Config.RGB_565).apply {
        for (x in 0 until size) {
            for (y in 0 until size) {
                setPixel(x, y, if (matrix[x, y]) 0xFF1A2B3C.toInt() else 0xFFFFFFFF.toInt())
            }
        }
    }
}

// Usage
val qrBitmap = generateQRCode("https://qrcode.fun")
Jetpack Compose QR Code
@Composable
fun QRCodeImage(
    data: String,
    modifier: Modifier = Modifier,
    size: Int = 300
) {
    val bitmap = remember(data) { generateQRCode(data, size) }

    Image(
        bitmap = bitmap.asImageBitmap(),
        contentDescription = "QR Code",
        modifier = modifier.size(200.dp)
    )
}

// Usage in a Composable
@Composable
fun MyScreen() {
    QRCodeImage(data = "https://qrcode.fun")
}
QRCode.fun API

Gerar Códigos QR via API em Kotlin

Chame a API do QRCode.fun a partir de Kotlin usando OkHttp ou Ktor para códigos QR estilizados.

Integração de API Kotlin
import okhttp3.*
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.RequestBody.Companion.toRequestBody
import org.json.JSONObject

suspend fun generateQRCodeViaAPI(data: String): String {
    val client = OkHttpClient()
    val json = JSONObject().apply {
        put("data", data)
        put("width", 300)
        put("height", 300)
        put("type", "png")
        put("margin", 10)
        put("dotsOptions", JSONObject().apply {
            put("color", "#1A2B3C")
            put("type", "rounded")
        })
        put("cornersSquareOptions", JSONObject().apply {
            put("color", "#8564C3")
            put("type", "extra-rounded")
        })
        put("backgroundOptions", JSONObject().apply {
            put("color", "#FFFFFF")
        })
    }

    val request = Request.Builder()
        .url("https://qrcode.fun/api/generate-qr-styled")
        .post(json.toString().toRequestBody("application/json".toMediaType()))
        .build()

    val response = client.newCall(request).execute()
    val result = JSONObject(response.body?.string() ?: "")
    return result.getString("data") // base64 PNG data URL
}

Pré-visualização de Código QR ao Vivo

Experimente gerar um código QR com Kotlin agora mesmo.

Pré-visualização QR

ZXing vs API

Compare o uso do ZXing em Kotlin com a API do QRCode.fun.

FuncionalidadeBiblioteca ZXingQRCode.fun API
Complexidade de configuraçãoDependência Gradle + renderização BitmapUma única requisição HTTP via OkHttp
PersonalizaçãoTamanho, correção de erros, cores via BitmapEstilização completa: cores, formas, logotipos
Suporte offlineSimRequer internet
ManutençãoAtualização de dependência GradleSempre atualizado
Formatos de saídaBitmap (Android)PNG, SVG

Casos de Uso de Códigos QR em Kotlin

Cenários comuns para códigos QR em aplicações Kotlin.

Aplicações Android

Gere e exiba códigos QR em aplicações Android para partilhar links, contactos, credenciais Wi-Fi e informações de pagamento.

Jetpack Compose

Crie componentes composáveis de códigos QR com estilos e animações personalizados para interfaces Android modernas.

Kotlin Multiplatform

Partilhe a lógica de geração de códigos QR entre Android, iOS e desktop usando Kotlin Multiplatform com a API do QRCode.fun.

Serviços Backend

Gere códigos QR em serviços Ktor ou Spring Boot Kotlin para bilhetes, faturas e fluxos de autenticação.

Perguntas Frequentes

Perguntas comuns sobre a geração de códigos QR com Kotlin.

Para Android, ZXing (zxing:core) é a escolha padrão. Para Kotlin Multiplatform ou do lado do servidor, considere usar a API do QRCode.fun para consistência entre plataformas.

Comece a gerar códigos QR com Kotlin

Use o nosso gerador gratuito ou integre a API nas suas aplicações Kotlin e Android.