달력

052012  이전 다음

  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  




광고 한번만 클릭 부탁드립니다^^
위에 냐옹이 말구~ 위에 배너요~^_^/ 


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject : 안드로이드 디버깅하기

최종수정일 : 2012.05.25


안녕하세요~^^
안드로이드...개발하다가 정말 지쳐서 디버깅을 어떻게 할까 하다 하다 못해
Toast 를 고정적으로 띄워놓고, 값을 변경 시켜버리기로 하였습니다.

결국 Logcat 에서 100개 정도 뜨다가 안뜨는 그런 버그... 찾기도 힘들고 귀찮아서 -_-ㅋ
토스트로 해결을 해보자. 하였습니다.

물론 디버깅하는데 개발환경 및 등등등 에 따라서 저의 디버깅 방법이 맞지 않을 수 있으나,

뭐 저두 저 나름대로 편한대로 한거니깐. 써보시길,

by 퓨림노

글을 작성하겠습니다.
(스크린샷은 찍기 귀찮네요 ㅎㅎㅎㅎ)


1. Toast 를 화면의 고정적으로 띄우도록 하자.


    Handler m_handler = new Handler() {
        public void handleMessage( Message msg ){
            if( msg.what == 0 ){
                Toast.makeText( m_context, "Init Orientation Mode", Toast.LENGTH_SHORT).show();
            }
            else if( msg.what == 1 ){
                int angle = (int)msg.arg1;
               
                if( m_Msg == null ){                   
                    //m_Msg = Toast.makeText( m_context, "Angle = " + angle, Toast.LENGTH_SHORT);                   
                    m_Msg = Toast.makeText( m_context, (String)msg.obj, Toast.LENGTH_SHORT);
                }
                else{
                    m_Msg.setGravity(Gravity.BOTTOM | Gravity.RIGHT, 0, 0);                   
                    //m_Msg.setText( "Angle = " + angle );             
                    m_Msg.setText( (String)msg.obj );
                    m_Msg.show();
                }
            }   
        }
    };

Toast 의 return 되는 값을 저장해두고 값이 없어지는지 아닌지 확인을 합니다.

그리고 Toast 의 메시지를 setText() 함수를 사용하여 내용을 변경하도록 합니다.


자세한 설명은 소스가 짧기 때문에 안합니다~^^


            // test Toast Message
            String str = "init : " + (int)SensorInitAzimuth + ", Present : " + (int)SensorPresentAzimuth + ", diff : " + diff;
            Message msg = Message.obtain();
            msg.what = 1;
            msg.arg1 = (int)angle[2];//(int)(-presentImgAzimuth);
            msg.obj = (Object)str;
            m_handler.sendMessage(msg);

토스트내용 출력이야 당연히 아실꺼구...


그냥 그렇게 하면 됩니다.


저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노

귀찮은 관계로 글자만 올리도록 합니다. 


이클립스 메뉴,


Window -> Preferences -> General -> Appearance -> Colors and Fonts -> Java -> Java Editor Text Font -> Change


아래 그림과 같이 수정하시면 됩니다. 




저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노

[eclipse] 북마크 단축키


  관리하는게 너무 귀찮아서 인터넷글을 참조해서 포스팅중!


1. Eclipse의 북마크 Plugin

 help > install new > work with : 


이것도 ADT처럼 추가를 해주도록 하자. 


설치되고나서의 단축키


북마크 :  Ctrl + B

다음 북마크 ; Ctrl + N

지정 북마크 등록 : Alt + 숫자

지정 북마크 이동 : Alt + shift +  숫자



2. 플러그인 미설치시 방법 Click

http://blog.naver.com/PostView.nhn?blogId=cruciancar&logNo=150099689723&redirect=Dlog&widgetTypeCall=true



01. Ctrl + shift + L 을 두번 누른다.

02. 위에 book 라고 누르면 아래와 같이 나온다.


Add Bookmark 설정

Binding : F2

when : Editing java Source


Show View(Bookmarks)

Binding : Shift + F2 (마음대로 해두됨, ubuntu 에서 다른 단축키를 사용중이라서..Ctrl + F2를 안함)

when : Editing java Source


뭐 결과는 안함. 



3. 기타 참조하자.  Click

http://kkamagui.springnote.com/pages/432649


저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노


광고 한번만 클릭 부탁드립니다^^
위에 냐옹이 말구~ 위에 배너요~^_^/ 


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject [Android] JNI 에서 조심해야 할 사항! (unsatisfiedlinkerror)

최종수정일 : 2012.01.18

안녕하세요~^^
JNI 를 사용하면서. 정작 5시간동안 하나의 오류를 가지고 삽질 했네요...ㅜㅜㅜㅜㅜ
왕창피.. 말못함.  


by 퓨림노

글을 작성하겠습니다.

일단! 에러가 난 부분!
스샷은 못찍었습니다.

하지만

1. JNI (NDK) 를 이용하여 컴파일!
2. java 에서 native code 를 호출
3. 여기서 에러! ( unsatisfiedlinkerror ) 가 발생하면서 생성한 함수를 찾을 수 없다고 나온다. 

 그래서...문법에도 문제가 없다. 
Java 에서 선언한 곳에서도 문제가 없다.
그리고 space(" ") 으로 인한, 글자 체계와 관련된 문제도 없다. <-- 흔하게 일어남. (Android.mk) 파일에서...

마지막에.... 이전에 있던 파일을 하나씩 추가추가 하면서. 한단계식 밟아가는 과정중에...

이런 문제가 보였다.

기존 코드(Original)

extern "C" {
  JNIEXPORT

void JNICALL Java_vr_knu_ac_kr_FeatureTracking_FindFeatures

  ( JNIEnv *env,

jobject obj,

jint width,

jint height,

jbyteArray yuv,

jintArray rgba,

jintArray xary,

jintArray yary,

jintArray PosX,

jintArray PosY,

jdoubleArray RT )
{
   ....

 



잘못된 코드(my code???? )

  JNIEXPORT

void JNICALL Java_vr_knu_ac_kr_FeatureTracking_FindFeatures

  ( JNIEnv *env,

jobject obj,

jint width,

jint height,

jbyteArray yuv,

jintArray rgba,

jintArray xary,

jintArray yary,

jintArray PosX,

jintArray PosY,

jdoubleArray RT )
{
   ....


 
C코드라고 명시를 해주는 부분이 빠져있다. ...


물론. 소스코드를 수정함에 있어서, synchronized 부분 을 잘못사용하여서 죽은 것도 있지만....
갈길이 멀다 ? 라고 표현하는게 이런 때 쓰는 거군!

뭐 그래도 =+=/ 후딱 끝내자.  
저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노


광고 한번만 클릭 부탁드립니다^^
위에 냐옹이 말구~ 위에 배너요~^_^/ 


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject Easy logging switch between debug/release versions

최종수정일 : 2012.01.17

안녕하세요~^^

by 퓨림노

글을 작성하겠습니다.

Debug version of Config.java:

package com.test;
public class Config {
  public static final boolean D = true;
  public static final boolean V = true;
}

Release version of Config.java:

package com.test;
public class Config {
  public static final boolean D = false;
  public static final boolean V = false;
}

The build script can select one of them to build debug or release version.

In a class that wants to use the switch:

import static com.test.Config.D;

...
   if (D) Log.d(TAG, ...);



Reference
http://www.androidsnippets.com/easy-logging-switch-between-debugrelease-versions  
저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노


광고 한번만 클릭 부탁드립니다^^
위에 냐옹이 말구~ 위에 배너요~^_^/ 


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject : [eclipse] File search 단축키

최종수정일 : 2011.01.16

안녕하세요~^^
eclipse를 사용하면서 파일안에 필요한 단어를 찾는 기능이 기본으로 지정되어 있지 않네요~^^
by 퓨림노

글을 작성하겠습니다.


1. 단축키 등록하는 방법

1. 먼저 eclipse 에서 ctrl + shift + L 키를 누릅니다. ( 2번 누릅니다.)
    한번! 누르게 되면 아래와 같은 화면이 뜹니다. 그럼 같은 버튼을 한번 더 누릅니다.


그럼 아래와 같은 창이 뜹니다.


위쪽에 ' type filter text' 부분에 'File Search' 라고 적어줍니다.


아래와 같이 화면이 뜨죠?

그러면 자신이 편한 단축키를 지정합니다.


전 Ctrl + F 키로 하였습니다.



저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노


광고 한번만 클릭 부탁드립니다^^
위에 냐옹이 말구~ 위에 배너요~^_^/ 


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject [Android] AssetManager

최종수정일 : 2012.01.16

안녕하세요~^^
 


by 퓨림노

글을 작성하겠습니다.

1. AssetManager 란?
2. Why?
3. 사용 방법



1. AssetManager 란? 


보기와 같이 assets 폴더에 들어가 있는 파일들을 읽기 위해서 사용한다.
( 파일을 저기에 쓰는 것? 까지는 잘 모르겠다. 하지만. 일단 읽는 것 정리를 해두도록 하자. )


2. Why?
그러고보니 왜 사용하냐?
분명 res/raw 경로에 저장하고 쓰기가 되었던 것 같은데 말이지...
찾아보면 나오겠죠? =ㅅ=.. 공부삼아 해보세요 ㅋ


3. 사용 방법  
URL : 
http://sungho0459.blog.me/40130901885
package vbflash.net;

import java.io.IOException;
import java.io.InputStream;

import android.app.Activity;
import android.content.res.AssetManager;
import android.os.Bundle;

public class AssetsReaderAct extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        AssetManager assetMgr = this.getResources().getAssets();
        try {
        	
        	// input
			InputStream is = assetMgr.open("read.txt");
			long filesize = is.available();
			
			byte[] tempdata = new byte[(int)filesize];
			is.read(tempdata);
			String value = new String(tempdata);
			
			is.close();
			
			
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        
    }
}



소스코드는 위와 같다.

결과 화면은 다음과 같다.
tempdata 에는 int 형으로 글자가 저장되어 있어, String 형으로 변환시켜주었다. 
변환참고 : 
http://pinsil.tistory.com/664 
 - 찾아보니 내 블로그였다. ㄷㄷㄷ



진짜 결과는 아래와 같다.


소스코드 첨부. 간단한거지만!


 
저작자 표시 비영리 동일 조건 변경 허락
Posted by 퓨림노

Android 에서 사용하는 카메라의 Resolution 을 구하는 방법은 다음과 같다.

DisplayMetrics displayMetrics = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int pxWidth  = displayMetrics.widthPixels;
int pxHeight = displayMetrics.heightPixels;

사용하는 위치는 MainActivity 에서 사용하도록 한다. 
저작자 표시 비영리 동일 조건 변경 허락

'Android > Tip' 카테고리의 다른 글

[eclipse] File search 단축키  (0) 2012/01/16
[Android] AssetManager  (0) 2012/01/16
Android Camera Resolution  (0) 2011/12/30
Android Tip - Surface view 에 double buffering 하는 방법  (0) 2011/12/27
Android NDK 경로 저장(windows, ubuntu )  (0) 2011/12/20
22  (0) 2011/10/27
Posted by 퓨림노
http://anddev.tistory.com/14



생각보다... 오묘한 맛이 난다. 
저작자 표시 비영리 동일 조건 변경 허락

'Android > Tip' 카테고리의 다른 글

[Android] AssetManager  (0) 2012/01/16
Android Camera Resolution  (0) 2011/12/30
Android Tip - Surface view 에 double buffering 하는 방법  (0) 2011/12/27
Android NDK 경로 저장(windows, ubuntu )  (0) 2011/12/20
22  (0) 2011/10/27
Android - 단축키  (0) 2011/02/18
Posted by 퓨림노


광고 한번만 클릭 부탁드립니다^^
위에 냐옹이 말구~ 위에 배너요~^_^/ 


포스팅을 보시는 분들을 위해 노력 하는 블로거를 위하여! 부탁드립니다. 재미 삼아 포스팅을 정리하지만, 광고를 달아보았습니다. 얼마나 열심히 할 수 있을지...의문이지만요^^ 

Subject Android NDK 경로 저장(windows, ubuntu )

최종수정일 : 2011.01.18

안녕하세요~^^
Android 를 사용하면서 현재 제가 사용하는 환경 정보를 잃어버리는 경우가 있습니다.

뭐 남들하고 틀릴련지는 모르지만, 저처럼 하면 저처럼 됩니다~~( 저같은 .... 그런 미천한 그런거 말고...)
그냥 실행 된다. ? 라는 --- 말장난...? .. 쩝... 아무도 안알아주는 개그. 이만.  


by 퓨림노

글을 작성하겠습니다.


1. Windows Setting 
 - .bashrc file
 - system path

2. ubuntu Setting
- .profile(or .bashrc ) file

 

[1] Windows Setting

.bashrc file

[1] Windows - Crystax version

# Android NDK Path -1-  -------------------------------------------------

export PATH=$PATH:/home/jppark/android-ndk-r4-crystax

export ANDROID_NDK_ROOT=/home/jppark/android-ndk-r4-crystax

export ANDROID_NDK=/home/jppark/android-ndk-r4-crystax

  
[2] Windows - NDK-r7 ( original version )

# Android NDK Path -2-  -------------------------------------------------

# export PATH=$PATH:/home/android-ndk-r7

# export ANDROID_NDK_ROOT=/home/jppark/android-ndk-r7

# export ANDROID_NDK=/home/jppark/android-ndk-r7


[3] OpenCV 2.3.1 PATH

#Android OpenCV Path (windows)

export OPENCV_ROOT=/home/jppark/OpenCV-2.3.1-android-bin/OpenCV-2.3.1

export OPENCV_INCLUDES=/home/jppark/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/include

 
* opencv 는 이것 말고도 셋팅하기가 번거롭다. ( 정리하기 귀찮으니, 알아서^^;; ) 



Windows System PATH

[1] Windows - Crystax version 

%CommonProgramFiles%\Microsoft Shared\Windows Live;C:\Program Files\OpenCV\bin;C:\Program Files\UniUSB\Common;C:\Program Files\Java\jdk1.6.0_22\bin;C:\cygwin\bin;C:\OpenCV2.2\bin;C:\apache-ant-1.8.2\bin;C:\cygwin\home\jppark\android-ndk-r4-crystax


[2] Windows - NDK-r7 ( original version ) 

%CommonProgramFiles%\Microsoft Shared\Windows Live;C:\Program Files\OpenCV\bin;C:\Program Files\UniUSB\Common;C:\Program Files\Java\jdk1.6.0_22\bin;C:\cygwin\bin;C:\OpenCV2.2\bin;C:\apache-ant-1.8.2\bin;C:\cygwin\home\jppark\android-ndk-r7


 


[2] Ubuntu
 
.bashrc file


[1] Crystax version

# Android NDK - crystax

export PATH=$PATH:/home/vbflash/android/android-ndk-r4-crystax

export ANDROID_NDK_ROOT=/home/vbflash/android/android-ndk-r4-crystax


[2] NDK-r6 ( original version ) 

# export PATH=$PATH:/home/vbflash/android/android-ndk-r6-crystax

# export ANDROID_NDK_ROOT=/home/vbflash/android/android-ndk-r6-crystax


[3] OpenCV 2.3.1 PATH 

# opencv 2.3.1

export ANDROID_STANDALONE_TOOLCHAIN=/home/vbflash/android/android-sdk-linux/tools

export OPENCV_ROOT=/home/vbflash/android/OpenCV-2.3.1-android-bin/OpenCV-2.3.1

export OPENCV_INCLUDES=/home/vbflash/android/OpenCV-2.3.1-android-bin/OpenCV-2.3.1/include



 
저작자 표시 비영리 동일 조건 변경 허락

'Android > Tip' 카테고리의 다른 글

Android Camera Resolution  (0) 2011/12/30
Android Tip - Surface view 에 double buffering 하는 방법  (0) 2011/12/27
Android NDK 경로 저장(windows, ubuntu )  (0) 2011/12/20
22  (0) 2011/10/27
Android - 단축키  (0) 2011/02/18
Android - textSize  (0) 2011/02/17
Posted by 퓨림노