Android生成二维码那
时间: 2023-10-01 16:04:59 浏览: 86
Android生成二维码
你可以使用ZXing库来在Android上生成二维码。首先,确保你在项目的`build.gradle`文件中添加了以下依赖项:
```groovy
implementation 'com.google.zxing:core:3.4.0'
implementation 'com.journeyapps:zxing-android-embedded:3.4.0'
```
接下来,在你的Activity中,你可以使用以下代码生成二维码:
```java
import android.graphics.Bitmap;
import android.os.Bundle;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
public class MainActivity extends AppCompatActivity {
private static final String CONTENT = "Hello, World!"; // 要生成二维码的内容
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ImageView qrCodeImageView = findViewById(R.id.qr_code_image_view);
try {
Bitmap bitmap = generateQrCode(CONTENT, 500, 500); // 生成二维码
qrCodeImageView.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
}
private Bitmap generateQrCode(String content, int width, int height) throws WriterException {
QRCodeWriter qrCodeWriter = new QRCodeWriter();
BitMatrix bitMatrix = qrCodeWriter.encode(content, BarcodeFormat.QR_CODE, width, height);
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
for (int x = 0; x < width; x++) {
for (int y = 0; y < height; y++) {
bitmap.setPixel(x, y, bitMatrix.get(x, y) ? Color.BLACK : Color.WHITE);
}
}
return bitmap;
}
}
```
上述代码将在你的布局文件中显示一个带有生成的二维码的ImageView。你可以根据需要调整生成的二维码的大小和内容。记得在AndroidManifest.xml文件中添加相应的权限:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
```
这样你就可以在Android上生成二维码了。希望对你有所帮助!
阅读全文