앱툴즈
윈도우그룹
54.♡.148.101
54.♡.149.84
54.♡.149.5
106.♡.154.242
54.♡.148.177
54.♡.148.96
42.♡.136.44
54.♡.148.224
106.♡.155.229
54.♡.148.136
54.♡.149.48
54.♡.149.68
54.♡.148.25
106.♡.154.42
42.♡.137.49
42.♡.254.66
54.♡.160.119
106.♡.157.234
42.♡.138.79
121.♡.130.95
42.♡.139.97
42.♡.137.110
54.♡.148.152
106.♡.159.81
125.♡.235.181
54.♡.148.226
54.♡.148.72
141.♡.142.56
211.♡.9.197
54.♡.149.78
54.♡.148.232
54.♡.149.17
106.♡.153.242
54.♡.148.32
54.♡.148.124
54.♡.148.140
 
게시물 17건
 
안드로이드 폰의 기본 카메라 앱을 이용한 사진 촬영 (Intent)
글쓴이 : 이경용                   날짜 : 2015-06-09 (화) 08:21 조회 : 2370
camera.zip (5.4M), Down : 0, 2015-06-09 08:21:17




단말에 있는 카메라 앱을 띄워주는 방법
앱에서 상당히 많이 사용하는 기능
인텐트를 사용하는 방법으로 안드로이드 폰의 기본 카메라 앱을 이용해서
촬영한 결과를 가져오는 방법과 직접 촬영하는 기능을 만드는 방법이 있다.

* 직접 촬영 기능을 구현할땐, 카메라 미리보기를 위해서는 영상을 실시간으로 보여주기 위해서는 성능이 중요해서 하드웨어 가속 기능을 사용할 수 있는 서피스뷰(SurfaceView)를 사용한다.

아래 소스는 안드로이드의 기본 앱을 이용(Intent)해서 촬영하는 예제 이다.

1. 레이아웃 파일
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="New Button"
        android:id="@+id/button"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:onClick="onButtonCamera" />
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/imageView"
        android:layout_below="@+id/button"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />
</RelativeLayout>


2. 자바소스
    ImageView imageView;
    File outputFile;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        imageView = (ImageView) findViewById(R.id.imageView);
        File storageDir = Environment.getExternalStorageDirectory();
        outputFile = new File(storageDir, "output.jpg");
    }
    public void onButtonCamera(View v) {
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(outputFile));
        startActivityForResult(intent, 1001);
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if(requestCode == 1001) {
            BitmapFactory.Options options = new BitmapFactory.Options();
            options.inSampleSize = 8;
            Bitmap bitmap = BitmapFactory.decodeFile(outputFile.getAbsolutePath(), options);
            imageView.setImageBitmap(bitmap);
        }
    }

3. 퍼미션
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.camera" android:required="true"></uses-permission>




최면중... 당신은 곧 코멘트를 달게 됩니다...수리수리 뽀로롱..



 

게시물 17건
번호 제목 글쓴이 날짜 조회
17  안드로이드 폰의 기본 카메라 앱을 이용한 사진 촬영 (Intent) 이경용 06-09 2371
16  개발자 콘솔의 콘텐츠 등급에서 전체이용가 선택 안되는 경우 이경용 07-23 2238
15  안드로이드 4 4 킷캣 버전이 개발자에게 주는 메시지 주호성 12-25 3376
14  모바일 사파리에서 스크롤 구현과 관련된 문제 한서경 12-25 2615
13  안드로이드 웹뷰를 통해 외부어플로 공유하기 카카오톡 공유 최동훈 12-25 3647
12  Activity 데이터 값 넘기기 이경용 09-27 2033
11  앱개발기획서 +13 이경용 07-02 3857
10  이클립스 폰트 수정하기 이경용 06-06 3445
9  백버튼 클릭으로 종료시 물어보기 추기 +2 이경용 01-11 3998
8  안드로이드 activity 타이틀바 제거하기 이경용 01-11 3752
7  안드로이드 웹뷰 (WebView) +5 이경용 01-10 13338
6  AVD에 apk 파일 설치하기 +2 이경용 05-30 3070
5  맥북에서 안드로이드 설정 (초간단 리스트) +2 이경용 04-13 3230
4  02.안드로이드 이벤트 처리 이해하기 +6 이경용 10-28 3513
3  01.안드로이드 환경 설치 (나만 알아보는 메뉴얼 ^^) +12 이경용 10-26 3768
2  안드로이드 개발의 시작 이클립스 설치 및 안드로이드 SDK 연동 과정 설명 +10 이경용 10-04 3784
1  안드로이드 개발의 시작 Android SDK 설치 과정 설명 +8 이경용 10-04 3768
 
 
 
Copyright ⓒ www.androidstudy.co.kr. All rights reserved.