iOS & Android 49

Android Pre Compiler NPE

이클립스 안드로이드 개발 플러그인을 21.0.1로 업데이트하고 나서 Android Pre Compiler에서 NullPointerException이 발생하여 프로젝트 빌드가 되지 않는 현상이 발생했다. 이유는 .svn 디렉토리 .DS_Store 파일이나 확장자가 없는 파일들 때문이라고 한다. [링크] 프로젝트의 Properties > Resource > Resource Filters 에 설정을 추가해서 관련 파일들을 제외시켜주면 해결된다.

iOS & Android 2013.01.30

UIViewController initWithNibName, viewDidLoad 호출 순서!?

UIViewController의 initWithNibName에서 초기값을 설정하고, setSomthing() 류의 함수를 외부로 노출하여 실제 화면에 보여지기 전에 something 값을 얻어서 화면에 반영하려고 했다. 즉, 기대하는 호출 순서는 initWithNibName -> setSomething -> viewDidLoad 가 되겠다. 하지만 실제로는 initWithNibName -> viewDidLoad -> setSomething 으로 불려지더라... -_-; initWithNibName 안에 다음과 같은 코드가 있었는데, 크기를 구하는 것 때문에 initWithNibName 처리 중에 viewDidLoad를 호출해버리는 것 같다. 레이아웃이 이루어진 다음에 구할 수 있는 값은 viewDidLo..

iOS & Android 2013.01.14

Android Dependencies 에 src, javadoc 추가하기

안드로이드 프로젝트의 libs 폴더에 들어있는 라이브러리들은 Android Dependencies에 자동으로 속한다. 하지만, 여기에 속해있는 라이브러리들에 source나 javadoc을 넣을 수 없게되어있는데 (아마도 버그) 다음과 같은 방법으로 해결한다. libs에 있는 라이브러리 이름을 딴 properties 파일을 만들고 그 안에 설정을 넣는다. 그리고 해당 프로젝트를 닫았다 열어준다. 예를 들어, libs 폴더에 android-support-v4.jar 가 있다면 android-support-v4.jar.properties 파일을 만들어준다. 그리고, android-support-v4.jar.properties 파일의 내용으로 다음을 채워준다. (경로는 자신의 환경에 맞게 수정해야함.) src=..

iOS & Android 2012.10.10

구글 넥서스 시리즈 공장 초기화

구글 개발자 페이지에는 넥서스 시리즈의 공장 이미지들이 준비되어 있다. https://developers.google.com/android/nexus/images 원하는 이미지를 선택하고 다운로드한 후 압축을 푼다. 거기서 다음 명령을 실행하면 알아서 진정한 공장 초기화를 해준다. ./flash-all.sh 스크립트에서 fastboot를 이용하므로 fastboot가 PATH에 잡혀있어야 한다. fastboot는 안드로이드 SDK를 설치하면 그 안에 있다.

iOS & Android 2012.09.27

iPhone 5 해상도 지원하기

iPhone5가 길게 나와버리는 바람에 640*1136 이라는 해상도를 추가로 지원해야 된다. 기존 프로젝트에서 스플래쉬 이미지(Default-568h@2x.png)만 추가해주면 쉽게 처리되는데, 화면 구성을 독자적으로 한 경우에는 추가 작업이 필요하다. 내가 하던 프로젝트에서는 배경 이미지가 적용되어 있어서 해상도에 맞게 이미지를 바꿔줘야 하는 상황이다. 이미지는 편의상 이름을 img-568h@2x.png 로 지어줬다. 이 때, Default-568h@2x.png를 생각하고 자동으로 처리될거라고 판단하면 안된다. -568h는 자동으로 계산해주지 않는다. 즉, 적용한 코드는 다음과 같다. if ([[UIScreen mainScreen] bounds].size.height == 568) { _imgBack..

iOS & Android 2012.09.20

Compilation failed for data model at path

Core Data를 사용해서 iOS 앱 개발 중인데, 종종 빌드 과정에 에러가 발생한다. 아무래도 이 현상이 Mac OS를 Mountain Lion으로 업데이트하고, Xcode를 4.4.1로 업데이트하면서 생긴 것 같다. 결론은 "Xcode를 지우고 새로 설치해서 해결"solution: Reinstall Xcode 다음 내용은 추측 (해결하고나니 이전 상태를 볼 수가 없어서...) 터미널에서 빌드를 해보니 메세지가 떨어지는데, 결국 에러는 dyld: Symbol not found: _OBJC_CLASS_$_NSAttributeDescription 이거다. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Develo..

iOS & Android 2012.08.17