Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Android

จะคลิกกล้องโดยทางโปรแกรมใน Android ได้อย่างไร?


ตัวอย่างนี้สาธิตวิธีการคลิกกล้องแบบเป็นโปรแกรมใน Android

ขั้นตอนที่ 1 − สร้างโครงการใหม่ใน Android Studio ไปที่ไฟล์ ⇒ โครงการใหม่และกรอกรายละเอียดที่จำเป็นทั้งหมดเพื่อสร้างโครงการใหม่

ขั้นตอนที่ 2 − เพิ่มรหัสต่อไปนี้ใน res/layout/activity_main.xml

   <ปุ่ม android:id="@+id/btnCaptureImage" android:text="Capture Image" android:layout_width="match_parent" android:layout_height="wrap_content" />

ขั้นตอนที่ 3 − เพิ่มรหัสต่อไปนี้ใน src/MainActivity.java

<ก่อนหน้า>นำเข้า android.Manifest;นำเข้า android.content.ContentValues;นำเข้า android.content.Intent;นำเข้า android.content.pm.PackageManager;นำเข้า android.net.Uri;นำเข้า android.os.Build;นำเข้า android.provider MediaStore;นำเข้า android.support.annotation.NonNull;นำเข้า android.support.v7.app.AppCompatActivity;นำเข้า android.os.Bundle;นำเข้า android.view.View;นำเข้า android.widget.Button;นำเข้า android.widget.ImageView; นำเข้า android.widget.Toast; MainActivity คลาสสาธารณะขยาย AppCompatActivity { คงที่ส่วนตัวสุดท้าย int PERMISSION_CODE =1,000; ปุ่ม mCaptureBtn; ImageView mImageView; ภาพยูริ Uri; int ส่วนตัว IMAGE_CAPTURE_CODE =1001; @Override ป้องกันโมฆะ onCreate (Bundle saveInstanceState) { super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); mImageView =findViewById(R.id.imageView); mCaptureBtn =findViewById(R.id.btnCaptureImage); mCaptureBtn.setOnClickListener (View.OnClickListener ใหม่ () { @Override public void onClick (View v) { if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.M){ if (checkSelfPermission(Manifest.permission.CAMERA)==PackageManager .PERMISSION_GRANTED(Manifest.permission.CAMERA).PERMISSION_DENIED){ อนุญาต String[] ={Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE}; requestPermissions(permission,PERMISSION_CODE); } else{ openCamera(); } } } } } } ); } โมฆะส่วนตัว openCamera () { ค่า ContentValues ​​=ใหม่ ContentValues ​​(); values.put(MediaStore.Images.Media.TITLE, "รูปภาพใหม่"); values.put(MediaStore.Images.Media.DESCRIPTION, "จากกล้อง"); imageUri =getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI ค่า); เจตนา cameraIntent =เจตนาใหม่ (MediaStore.ACTION_IMAGE_CAPTURE); cameraIntent.putExtra (MediaStore.EXTRA_OUTPUT, imageUri); startActivityForResult(cameraIntent, IMAGE_CAPTURE_CODE); } โมฆะสาธารณะ onRequestPermissionsResult (int requestCode, @NonNull String[] การอนุญาต, @NonNull int[] GrantResults) { สวิตช์ (requestCode){ case PERMISSION_CODE:{ if (grantResults.length> 0 &&GrantResults[0]==SSIONRANGRANER) { กล้องเปิด(); } อื่น { Toast.makeText(นี่ "ถูกปฏิเสธ...", Toast.LENGTH_SHORT).show(); } } } } @Override ป้องกัน void onActivityResult (int requestCode, intresultCode, Intent data) { if (resultCode ==RESULT_OK) { mImageView.setImageURI (imageUri); } }}

ขั้นตอนที่ 4 − เพิ่มรหัสต่อไปนี้ใน androidManifest.xml

    <กิจกรรม android:name=".MainActivity">      

มาลองเรียกใช้แอปพลิเคชันของคุณกัน ฉันคิดว่าคุณได้เชื่อมต่ออุปกรณ์มือถือ Android จริงกับคอมพิวเตอร์ของคุณ ในการรันแอพจาก android studio ให้เปิดไฟล์กิจกรรมของโปรเจ็กต์แล้วคลิกไอคอน Run จากแถบเครื่องมือ เลือกอุปกรณ์มือถือของคุณเป็นตัวเลือก แล้วตรวจสอบอุปกรณ์มือถือของคุณซึ่งจะแสดงหน้าจอเริ่มต้นของคุณ -

จะคลิกกล้องโดยทางโปรแกรมใน Android ได้อย่างไร?

จะคลิกกล้องโดยทางโปรแกรมใน Android ได้อย่างไร?

จะคลิกกล้องโดยทางโปรแกรมใน Android ได้อย่างไร?