'끄적끄적/Android'에 해당되는 글 9건

  1. 2015.06.24 android-21의 ApiDemos import시 에러 해결 방법
  2. 2014.10.14 WindowManager$BadTokenException exception 발생 시..
  3. 2014.08.07 [Android Studio] 단축키를 eclipse로 변경~
  4. 2014.08.06 Gear Live & G Watch, Google glass의 USB driver 설치 하는 법 (1)
  5. 2014.08.05 [android studio] Could not resolve all dependencies for configuration 에러 발생 시...
  6. 2013.08.27 모델 정보 및 계정 가져오기
  7. 2013.06.28 JNI c파일에서 logcat에 로그 뿌리기
  8. 2012.09.01 Google HackFair~
  9. 2012.06.12 [GIT] File status (1)

android-21의 ApiDemos import시 에러 해결 방법

|

android-21의 ApiDemos import하면 에러가 발생하는데, 아래와 같이 해결 가능함.

1. android-support-v4.jar 에러

Project property - Java Build Path - Libraries - Add External JARs

SDK/extras/android/support/v4 폴더에서 

android-support-v4.jar 추가


2. com.google.android.mms.* 에러

에러가 발생하는 아래의 파일을 exclude

- com.example.android.apis.os

- MmsMessagingDemo.java

- MmsWapPushReceiver.java


exclude 하는 방법은, exclude할 파일을 선택한 후 마우스 우클릭

Build path - Exclude 선택

Trackback 0 And Comment 0

WindowManager$BadTokenException exception 발생 시..

|

java.lang.RuntimeException: Unable to create service : android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@4311ec98 -- permission denied for this window type

발생은 코드 중, WindowManager.LayoutParams.TYPE_PHONE 사용에 의한 것으로, 

AndroidManifest.xml에 android:sharedUserId="android.uid.system" 을 설정하던지 혹은

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

을 추가하면 됨. 끝!


Trackback 0 And Comment 0

[Android Studio] 단축키를 eclipse로 변경~

|

새로운 IDE를 쓸 때마다 가장 힘든게 단축키에 적응하는 건데..

Emacs에서 Source Insight 때도 그랬고

Source Insight에서 Eclipse 때도 역시...

최근 Android Studio를 쓰면서도... 역시하면서 다시 Eclipse를 쓰려고 했는데..

단축키를 미리 정의된 프로파일로 변경이 쉽게 가능한걸 알았음 ㅋ


File - Settings - Keymap을 선택하면

Eclipse는 물론, Visual Studio, Emacs, Mac 등등으로 변경 가능... 


그러나 100%는 아니지만, 그래도 이게 어디임!

Trackback 0 And Comment 0

Gear Live & G Watch, Google glass의 USB driver 설치 하는 법

|

안드로이드는 아래처럼 설치된 SDK 안에 드라이버가 있는데,

android-sdk\extras\google\usb_driver

이 드라이버가 새로운 기종 출시마다 업그레이드 잘 안되는 모양임.

그래서 Google glass나 안드로이드웨어의 Gear Live와 G Watch의 드라이버가 설치가 안되는 경우가 있음.


이전 안드로이드 폰과 같이 개발자 모드 생성 후(기기 정보의 빌드넘버 10회? 연속 터치),

ADB debugging을 on하면 드라이버를 설치하려고 하지만, 설치가 안되는 경우에는 아래와 같이 한다.

\android-sdk\extras\google\usb_driver\android_winusb.inf 파일을 열고, glass나 gear live 혹은 g watch에 대한 내용을 추가하면 되는데..

아래와 같이 [Google.NTx86]와 [Google.NTamd64]에 둘다 추가해야함

;Google Glass

%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_9001

%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_9001&MI_01


;Gear Live

%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_D002

%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_D002&MI_01


위에 빨간색으로 보이는 부분은, 장치 관리자 - 해당 기기의 속성 - 자세히 탭으로 진입 후,

속성 리스트에서 하드웨어 ID를 선택하면, 그 아래의 값에 나오는 내용을 참고하면 됨.


Trackback 0 And Comment 1
  1. Favicon of https://anunmankm.tistory.com BlogIcon 버크하우스 2014.08.06 15:59 신고 address edit & del reply

    잘 보고 갑니다. 좋은 하루 되세요. ^^

[android studio] Could not resolve all dependencies for configuration 에러 발생 시...

|

Android studio를 처음 빌드할 때, 아래와 같은 에러가 발생할 수 있음.

* What went wrong:

A problem occurred configuring project ':app'.

> Could not resolve all dependencies for configuration ':app:_debugCompile'.

   > Could not find any version that matches com.android.support:appcompat-v7:+.

     Required by:

         OpenSpritz-Android:app:unspecified

   > Could not find any version that matches com.android.support:support-v4:+.

     Required by:

         OpenSpritz-Android:app:unspecified


* Try:

Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.


BUILD FAILED


해결방법은 Android SDK Manager를 열어서, Extras - Android Support Repository를 install 하면 됨.

Trackback 0 And Comment 0

모델 정보 및 계정 가져오기

|

// device 고유 정보값 가져오기

    Log.d(tag"BOARD: " + Build.BOARD);

    Log.d(tag"BRAND: " + Build.BRAND);

    Log.d(tag"CPU_ABI: " + Build.CPU_ABI);

    Log.d(tag"DEVICE: " + Build.DEVICE);

    Log.d(tag"DISPLAY: " + Build.DISPLAY);

    Log.d(tag"FINGERPRINT: " + Build.FINGERPRINT);

    Log.d(tag"HOST: " + Build.HOST);

    Log.d(tag"ID: " + Build.ID);

    Log.d(tag"MANUFACTURER: " + Build.MANUFACTURER);

    Log.d(tag"MODEL: " + Build.MODEL);

    Log.d(tag"PRODUCT: " + Build.PRODUCT);

    Log.d(tag"TAGS: " + Build.TAGS);

    Log.d(tag"TIME: " + Build.TIME);

    Log.d(tag"TYPE: " + Build.TYPE);

    Log.d(tag"USER: " + Build.USER);

       

       

 // device 정보 가져오기

    TelephonyManager telephony=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

       

    Log.d(tag"getCallState : "+telephony.getCallState());

    Log.d(tag"getDataActivity : "+telephony.getDataActivity());

    Log.d(tag"getDataState : "+telephony.getDataState());

    Log.d(tag"getDeviceId : "+telephony.getDeviceId());

    Log.d(tag"getDeviceSoftwareVersion : "+telephony.getDeviceSoftwareVersion());

    Log.d(tag"getLine1Number : "+telephony.getLine1Number());

    Log.d(tag"getNetworkCountryIso : "+telephony.getNetworkCountryIso());

    Log.d(tag"getNetworkOperator : "+telephony.getNetworkOperator());

    Log.d(tag"getNetworkOperatorName : "+telephony.getNetworkOperatorName());

    Log.d(tag"getNetworkType : "+telephony.getNetworkType());

    Log.d(tag"getPhoneType : "+telephony.getPhoneType());

    Log.d(tag"getSimCountryIso : "+telephony.getSimCountryIso());

    Log.d(tag"getSubscriberId : "+telephony.getSubscriberId());

    Log.d(tag"getVoiceMailAlphaTag : "+telephony.getVoiceMailAlphaTag());

    Log.d(tag"getVoiceMailNumber : "+telephony.getVoiceMailNumber());

    Log.d(tag"isNetworkRoaming : "+telephony.isNetworkRoaming());

    Log.d(tag"hasIccCard : "+telephony.hasIccCard());

    Log.d(tag"hashCode : "+telephony.hashCode());

    Log.d(tag"toString : "+telephony.toString());

       

// device 계정 정보 가져오기

    Account[] accounts =  AccountManager.get(getApplicationContext()).getAccounts();

    Account account = null;

                 

    for(int i=0;i<accounts.length;i++) {

          account = accounts[i];

          Log.d(tag"Account - name: " + account.name + ", type :" + account.type);

 

          if(account.type.equals("com.google")){     //이러면 구글 계정 구분 가능

                       

          }

    }


Trackback 1 And Comment 0

JNI c파일에서 logcat에 로그 뿌리기

|

1. Android.mk 파일 수정

LOCAL_LDLIBS := -llog


2. JNI c파일 수정

#include <android/log.h>


__android_log_print(ANDROID_LOG_ERROR, "nativeJava","setOtpAsMouse : fd < 0");

원형 : __android_log_print(ANDROID_LOG_ERROR, TAG, MESSAGES, [vars]);


메시지 종류 : ANDROID_LOG_ERROR

ANDROID_LOG_UNKNOWN

ANDROID_LOG_DEFAULT

ANDROID_LOG_VERBOSE

ANDROID_LOG_DEBUG

ANDROID_LOG_INFO

ANDROID_LOG_WARN

ANDROID_LOG_ERROR

ANDROID_LOG_FATAL

ANDROID_LOG_SILENT



Trackback 0 And Comment 0

Google HackFair~

|

Google HackFair 소식을 주위에 알리고 초대권을 받아 가세요~

8월 29일 업데이트: 8월 29일 오후 4시 이후부터는 트위터, 페이스북, 구글 플러스가 아닌 곳에 올린 글만 유효합니다. 트위터, 페이스북, 구글 플러스에서는 이미 글이 많이 올라가 있기 때문입니다.

Google HackFair는 Android, Chrome, Go, Dart, HTML5, Google TV, NaCl 등 구글 기술을 이용해서 만든 다양한 결과물들을 전시하고 공유하는 행사입니다. 실제 행사는 11월 17일,18일에 열릴 예정이고 현재는 10월 15일까지 프로젝트 접수를 받고 있는 중인데 좀더 많은 분들과 함께하기 위해 간단한 이벤트를 준비했습니다. 바로 이 Google HackFair 소식을 주로 방문하시는 인터넷 사이트나 SNS에 올려 주시면 행사를 참관하실 수 있는 초대권을 보내 드리는 것입니다. :-) 

(참고로 Google HackFair는 다른 개발자들이 만든 쿨한 프로젝트들을 구경하는 것에 더해서 여러가지 다양한 행사와 이벤트들로 채울 예정인데 시간과 장소의 제약이 있으므로 참가 신청을 별도로 받을 예정이며 참가 신청 방법은 아직 정해지지 않았습니다.)

참가 방법
1. 자신이 주로 방문하는 인터넷 사이트/카페 혹은 본인의 블로그/SNS 등에 Google HackFair 관련 글을 올립니다.
2. 글을 올리고 난 후 이곳에서 등록을 해 주시면 끝. :-)

유의사항
1. 글에는 반드시 Google HackFair 페이지로의 링크인 http://googledevkr.blogspot.kr/2012/08/google-hackfair.html 또는 http://goo.gl/8qMki 가 포함되어 있어야 합니다.
2. 구글 플러스나 트위터에 글을 올리실 경우는 공식 해쉬태그인 #ghackfair 를 붙여 주세요.
3. 반드시 인터넷 상에서 해당 내용을 누구나 볼 수 있는 곳에 글을 올리셔야 합니다. 예를 들어 로그인을 해야만 볼 수 있는 곳이나 비공개 사이트에 글을 올린 경우는 해당되지 않습니다.
4. 접수 시한은 따로 정하지 않겠습니다. 위의 양식이 열려 있는 한 유효하다고 생각하시면 됩니다.

간단하죠? 부디 주위에 많이많이 알려 주셔서 좀더 많은 분들이 함께할 수 있도록 도와 주시고 행사에도 함께하실 수 있으면 좋겠네요~

Trackback 0 And Comment 0

[GIT] File status

|

Git을 접하고 가장 생소했던 부분 중 하나인 File status.

기존 CVS 비교하며 이해하려 하는데, 다소 다른 개념때문에 혼란스러움. ㅋㅋ


 Untracked

Tracked

 Unmodified

Modified

Staged 

 


------------------------------------------------------------------------------------------------------------------------->

git add [something] (for tracking a new file)


 

 

 

 


---------------->

edit file



-------------------------------------------->

git add [something] (for staging the modified file)


 

 


<-----------------------------------

for deleting : git rm [something]

      git commit

for untracked : git rm --cached [ something]

      git commit


<-----------------------------------------------------------------

git commit [something]



 


중요한 사항은 아래와 같음.

1. commit을 해야 최종 반영됨.

2. 새로운 파일의 추가 혹은 기 추가된 파일의 수정을 반영하기 위해서는, 우선 git add하여 staged 상태로 만들고, 그 후 commit 하여야 함.

3. 삭제의 경우도, git rm 이후 commit 하여야 반영됨

Trackback 0 And Comment 1
  1. Favicon of http://mih.airmaxshoesan.com/ BlogIcon nike air max 2013.04.08 02:42 address edit & del reply

    http://mih.hollisterpaschersa.com/

prev | 1 | next