65 lines
2.2 KiB
Java
65 lines
2.2 KiB
Java
package monnethic.mobile.qrcode;
|
|
|
|
import android.content.Intent;
|
|
import android.graphics.Bitmap;
|
|
import android.support.v7.app.AppCompatActivity;
|
|
import android.os.Bundle;
|
|
import android.view.View;
|
|
import android.widget.Button;
|
|
import android.widget.ImageView;
|
|
import android.widget.TextView;
|
|
|
|
import com.example.monnthic.monnethicmobile.R;
|
|
import com.google.zxing.BarcodeFormat;
|
|
import com.google.zxing.MultiFormatWriter;
|
|
import com.google.zxing.WriterException;
|
|
import com.google.zxing.common.BitMatrix;
|
|
import com.journeyapps.barcodescanner.BarcodeEncoder;
|
|
|
|
public class QrCodeActivity extends AppCompatActivity {
|
|
ImageView qrCode;
|
|
Button closeButton;
|
|
TextView adresseView;
|
|
TextView amountView;
|
|
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
setContentView(R.layout.activity_qr_code);
|
|
qrCode=findViewById(R.id.qrCodeViewer);
|
|
closeButton=findViewById(R.id.buttonClose);
|
|
adresseView=findViewById(R.id.textViewAdresseDisplay);
|
|
amountView=findViewById(R.id.textViewAmountDisplay);
|
|
|
|
Intent intent = getIntent();
|
|
String wallet_hash = intent.getStringExtra("WALLET_HASH");
|
|
String amount = intent.getStringExtra("AMOUNT");
|
|
try{
|
|
generateQrCode(wallet_hash,amount);
|
|
}catch(Exception e){
|
|
e.getMessage();
|
|
}
|
|
closeButton.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View view) {
|
|
finish();
|
|
}
|
|
});
|
|
}
|
|
|
|
private void generateQrCode(String wallet_hash, String amount) throws WriterException {
|
|
BitMatrix bitMatrix;
|
|
String valueToEncode = wallet_hash+";"+amount;
|
|
try{
|
|
bitMatrix = new MultiFormatWriter().encode(valueToEncode, BarcodeFormat.QR_CODE,350,350);
|
|
BarcodeEncoder barcodeEncoder = new BarcodeEncoder();
|
|
Bitmap bitmap = barcodeEncoder.createBitmap(bitMatrix);
|
|
qrCode.setImageBitmap(bitmap);
|
|
adresseView.setText(wallet_hash);
|
|
amountView.setText(amount);
|
|
}catch (Exception e){
|
|
e.getMessage();
|
|
}
|
|
}
|
|
}
|