您好,登錄后才能下訂單哦!
這篇文章給大家介紹如何在Android中實現掃描和生成二維碼,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
MainActivity.java
public class MainActivity extends AppCompatActivity { private ImageView mImageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button =findViewById(R.id.btn); mImageView =findViewById(R.id.img); button.setOnClickListener(new View.OnClickListener() { //點擊按鈕掃描二維碼 @Override public void onClick(View view) { Intent intent = new Intent(MainActivity.this,CaptureActivity.class); startActivityForResult(intent,2); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode==200&& resultCode==RESULT_OK){ if (data!=null){ String content = data.getStringExtra(Constant.CODED_CONTENT); if (TextUtils.isEmpty(content)){ Toast.makeText(MainActivity.this, "您的輸入為空!", Toast.LENGTH_SHORT).show(); return; } Bitmap logo = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher); try { Bitmap bitmap = CodeCreator.createQRCode(content, 400, 400, logo); mImageView.setImageBitmap(bitmap); } catch (WriterException e) { e.printStackTrace(); } Toast.makeText(MainActivity.this,"掃描"+content,Toast.LENGTH_SHORT).show(); } } } }
activity.main.xml
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:orientation="vertical"> <Button android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="掃一掃"/> <ImageView android:id="@+id/img" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </android.support.constraint.ConstraintLayout>
需要配置的權限
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.CAMERA"></uses-permission> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> <uses-feature android:name="android.hardware.camera" /> <uses-feature android:name="android.hardware.camera.autofocus" /> <uses-permission android:name="android.permission.FLASHLIGHT" />
build.gradle
minSdkVersion 16 //配置16 implementation'com.github.yuzhiqiang1993:zxing:2.2.1' //依賴
外部build.gradle
allprojects { repositories { google() jcenter() maven { url 'https://jitpack.io' } //加這行代碼 } }
關于如何在Android中實現掃描和生成二維碼就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。