Commonlife's Blog

My daily life

Archive for 1월 2013

android : FaceDetector

leave a comment »

FaceDetector : Api Level 1 :

*  Bitmap.Config.RGB_565 으로 decoding 되어야만 가능.

BitmapFactory.Options bitmapLoadingOptions = new BitmapFactory.Options();
bitmapLoadingOptions.inPreferredConfig = Bitmap.Config.RGB_565;
mBitmap = BitmapFactory.decodeFile(imageLocalPath, bitmapLoadingOptions);

// Ready
private int maxfaces = 10;     // 최대로 찾을 얼굴 갯수
FaceDetector myFaceDetector = new FaceDetector(mBitmap.getWidth(), mBitmap.getHeight(), maxfaces); //
FaceDetector.Face detectedFace = new FaceDetector.Face[maxfaces];
PointF faceMidPoint = new PointF();

// Find
int number_of_faces = myFaceDetector.findFaces(mBitmap, detectedFace);     // 여기서 얼굴을 찾음.
if(number_of_faces <= 0) {
} else {
    for(int i=0; i < number_of_faces; i++){
        FaceDetector.Face tempFace = detectedFace[i];
        int eyes_distance = tempFace.eyesDistance();

* detectedFace에 찾은 얼굴들이 저장된다.

Written by tocommonlife

2013/01/29 at 06:59

Android에 게시됨

Tagged with ,

android : Facebook SDK 3.0 연동하기

leave a comment »

= 사전에 필요한 부분 =

– facebook에 앱을 만들고 hash key 등록하기 :

keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64

= 기존의 방식 =

– new Facebook()와 Facebook.authorize()

= 바뀐 방식 =

UiLifecycleHelper과 widget.LoginButton 클래스의 이용

1. Session.StatusCallback 변수 선언 후 call 메소드를 @Override 한다.(parameter에 Session 클래스가 있는데 이걸 통해 AccessToken을 가져온다.)

2. LoginButton을 가지고 있는 Activity의 onCreate 메소드에서 UiLifecycleHelper를 1번에서 만든 call 변수를 parameter로 만든다.

3. 해당 activity에 onCreate, onResume, onPause, onDestroy, onActivityResult, onSaveInstanceState를 @Override하여 UiLifecycleHelper.onCreate, UiLifecycleHelper.onResume, UiLifecycleHelper.onPause, UiLifecycleHelper.onDestroy, UiLifecycleHelper.onActivityResult, UiLifecycleHelper.onSaveInstanceState를 호출한다.


public void onCreate(Bundle savedInstanceState){


= 바뀐 권한 정책 =

* LoginButton에서는 setReadPermissions 메소드를 통해서 페이스북 접근 권한을 설정할 수 있다.

* The LoginButton can only be associated with either read permissions or publish permissions, but not both. Calling both setReadPermissions and setPublishPermissions on the same instance of LoginButton will result in an exception being thrown unless clearPermissions is called in between. ==> 결국 read 와 publish 둘 다 권한을 줄 수가 없다. 둘 중 하나만 가능.

* 결국 읽기 권한을 먼저 획득 후 쓰기 권한을 요청한다.

– publish 권한은 필요할 때만 요청하기 위해서 둘을 나눠놓고 6번 이상의 권한을 유저에게 물으면 로그인을 끝까지 수행하지 않는다고 합니다.

Written by tocommonlife

2013/01/23 at 11:16

Android에 게시됨

Tagged with , , , ,