본문 바로가기

[Developer]/Android54

Android Gradle Plugin 2.2.0 사용시 native파일 Strip task추가 최근들어 Android Studio의 사용량이 안드로이드 개발자들 사이에서 부쩍 늘어났다.그래서 나도 개인적으로나 업무적으로나 eclipse를 놓아주고 Android Studio로 갈아탄지 6개월은 넘은 듯 하다. 잘 사용하고 있었고, 별 문제없었는데..(사실은 문제 많았지만.. 버그패치 잘 받던 중이라고 해두자.=_=) 특별히 내 프로젝트 안에는 특별한 이유로 JNI 를 이용한 so파일을 일부 변형하여 사용하고 있었다. 일단은 내가 소유하고 있는 so파일의 현재 형태는 다음과 같다. 1)그리고 이것을 실험하기 위해 Android Gradle Plugin 2.2.0 미만의 가장 나중 버전인 2.1.3을 먼저 실행해 보았다. 변경은 Project Root의 build.gradle 파일을 수정하면 된다. 이.. 2016. 9. 23.
RxAndroid Sample 에러시 대처법 1 최근 UI가 포함된 Android 개발할 일이 있어서 자료를 찾던 중,RxAndroid를 알고 이것에 대해서 테스트 해보기 위해 Github을 방문하여 fork하고 Android Studio에서 불러왔다.(https://github.com/ReactiveX/RxAndroid) 그리고선 실행을 하려는데! 아래의 에러가 날 가로막는다..;; 오전 11:56:41 Gradle sync failed: No service of type Factory available in ProjectScopeServices. 스크린샷이 더 와닿을 수 있으니 이건 뽀너스(=_=a;;) 여튼, 이러더니 gradle sync도 안되고 아무것도 안되는거다.. 실행할만한 단서가 아무것도 보이지 않아 구글검색을 하던 중 힌트를 발견해 기.. 2016. 9. 12.
Android.mk 파일로 디버깅로그 조절하기 Android.mk 파일을 조절함으로 디버깅로그를 Enable과 Disable할 수 있다. 이건 물론 make 파일이기 때문에, 일반 C에서도 해당이 되는 이야기이다. 아래와 같은 코드를 Android.mk 파일에 추가해 준다. LOCAL_CFLAGS := -DENABLE_DEBUG 위의 코드에서 -DENABLE_DEBUG 코드를 #으로 주석처리 하든지 활성화 시키든지 하면 된다.주석처리 -> 운영, 활성화 -> 개발의 의미 쯤 되겠다. 그리고 실제 코드에서는사용하려는 코드의 헤더파일에 아래와 같이 코드를 추가해준다.(include와 같은 기본적인 코드는 제외하고 필요한 것만 나열했다.) #ifdef ENABLE_DEBUG#define LOGD(...)__android_log_print(ANDROID_L.. 2015. 7. 14.
[Android] JDK7 사용자가 Sign 배포시 일어날 수 있는 문제. 회사에서 진행하는 프로젝트를 진행 중 이제 배포단계에 거의 이르러 배포버전을 릴리즈하려했다. 사실 지금 이 문제가 생기기 전까지 Eclipse에서만 시도하였는데.. 그때까진 아무문제가 없었다. 고로 나는 이게 문제가 될줄은 꿈에도 생각을 못했다. Eclipse로 빌드를 계속 하던 나는.. 배포버전을 조금 다르게 하여 총 4개의 APK 패키지를 만들어야 한다는 사실에, 좀 더 편한 방법은 없을까 고민해봤다. 그리고 조사해봤다. 조사결과 나와 똑같은 고민을 하는 사람이 많았고, 애초에 그것을 Ant라는 도구를 이용해서 많은 사람들이 이득을 보고 있었다. 즉, 배치파일과 비슷하게, 혹은 리눅스의 make파일과 유사하게 그 역할을 Apache의 ANT가 담당해주었던 것이다. 이 툴은 개미라는 이름처럼 명령만 내.. 2012. 2. 8.
AndroidCodec 2nd Afternoon BN과 BP는 RPC구조이다. AudioFlnger Service는 media_server의 일부분이다. 즉 4개의 중요한 블럭은 다음과같다. Binder Driver Service Provider Service Manager Service User HAL(하드웨어 추상화층) Audio관련하여서. external/libaudio소스쪽이 가장 중요하며, hardware/libhardware_legacy/include/hardware_legacy도 중요함 ALSA는 libaudio없이는 돌아가지 않는다. BlueZ는 Opensource이다. Bluetooth를 이용한. 이걸 이용하지 않고 다른걸 이용하면 유료로 사용해야 할 것이다. 아마도. Player를 C나 CPP로 만드는 작업을 선행해야 할 것이다. *.. 2011. 5. 25.
반응형