如何从Android网络配置中显示“共享Wi-Fi”二维码?

问题描述 投票:0回答:1

如何以编程方式(Kotlin 或 Java)从当前连接的网络显示二维码“共享 Wi-Fi”?

我能想到的最接近的是显示网络设置:

startActivity( Intent(Settings.ACTION_WIFI_SETTINGS) )

也许有一些“行动”可以使用“意图”进入“共享 Wi-Fi”屏幕?

android kotlin android-intent android-activity android-wifi
1个回答
0
投票

您应该尝试直接在应用程序中显示QR码,而不是直接打开QR码屏幕,您可以使用以下库来实现此功能

com.google.zxing:core:3.4.0

该库用于创建 QR 码,要实现此类 QR 码,您必须拥有所连接 wifi 网络的 SSID、加密类型和密码。

fun generateWifiQRCode(ssid: String, password: String, encryptionType: String): Bitmap? {
    val wifiNetwork = "WIFI:T:$encryptionType;S:$ssid;P:$password;;"
    val multiFormatWriter = MultiFormatWriter()
    
    try {
        val bitMatrix: BitMatrix = multiFormatWriter.encode(wifiNetwork, BarcodeFormat.QR_CODE, 200, 200)
        val barcodeEncoder = BarcodeEncoder()
        return barcodeEncoder.createBitmap(bitMatrix)
    } catch (e: Exception) {
        e.printStackTrace()
    }
    return null
}
© www.soinside.com 2019 - 2024. All rights reserved.