Trung tâm Tin học – ĐH KHTN Chụp hình Trong 1 bài viết trước mình đã demo 1 chuong trình quay video, và trong bài viết này mình sẽ demo tiếp 1 chương trình chụp ảnh sữ dụng Camera của thiết bị để chụp ảnh. 1/ Tạo Project : Project name: CaptureImageWithIntent Build Target: Android 2.3.3 Application name: CaptureImageWithIntent Package name: com.dac.Image Create Activity: MainActivity 2/ File layout main.java được thiết kế đơn giản như sau: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/btn" android:text="Take Picture" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="captureImage" /> </LinearLayout> 3/ File MainActivity.java : package com.dac.Image import java.io.File; import android.app.Activity; import android.content.ContentValues; import android.content.Intent; import android.content.pm.ActivityInfo; import android.net.Uri; Lập trình Android – http://laptrinhdidong.vn Page 1 Trung tâm Tin học – ĐH KHTN import android.os.Bundle; import android.provider.MediaStore; import android.provider.MediaStore.Images.Media; import android.util.Log; import android.view.View; public class MainActivity extends Activity { private static final String TAG = "CameraWithIntent"; Uri myPicture = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); } public void captureImage(View view) { ContentValues values = new ContentValues(); values.put(Media.TITLE, "My demo image"); values.put(Media.DESCRIPTION, "Image Captured by Camera via an Intent"); myPicture = getContentResolver().insert(Media.EXTERNAL_CONTENT_URI, values); Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); i.putExtra(MediaStore.EXTRA_OUTPUT, myPicture); startActivityForResult(i, 0); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode==0 && resultCode==Activity.RESULT_OK) { Intent inn = new Intent(Intent.ACTION_VIEW); Log.v(TAG, "myPicture is " + myPicture.toString()); inn.setData(myPicture); startActivity(inn); } } } Và khi các bạn debug ứng dụng sẽ được như sau (Các bạn lưu ý phải debug với Virtual Device có SD card): Lập trình Android – http://laptrinhdidong.vn Page 2 Trung tâm Tin học – ĐH KHTN Ban đầu: Khi bấm vào button: Mọi ý kiến đóng góp các bạn vui lòng gữi bài viết về trang web: http://forum.laptrinhdidong.vn/ . Rất mong nhận được sự phản hồi của các bạn Lập trình Android – http://laptrinhdidong.vn Page 3 . ĐH KHTN Chụp hình Trong 1 bài viết trước mình đã demo 1 chuong trình quay video, và trong bài viết này mình sẽ demo tiếp 1 chương trình chụp ảnh sữ dụng Camera của thiết bị để chụp ảnh. 1/ Tạo. xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/btn" android:text="Take. inn.setData(myPicture); startActivity(inn); } } } Và khi các bạn debug ứng dụng sẽ được như sau (Các bạn lưu ý phải debug với Virtual Device có SD card): Lập trình Android – http://laptrinhdidong.vn Page 2 Trung