Programming/iOS2016.03.24 17:14

Extension 사용하는 앱을 upload to app store 할때  90205, 90206 에러가 동시에 발생하는 경우

cocoapods가 원인..


1. Open the (Your App).xcodeproj file (this is the first file on the project navigator pane).
2. Switch to the target for your app extension (on the top left of the middle pane).
3. Go to the Build Phases tab
4. Click the X after "Embed Pod Frameworks"

https://github.com/CocoaPods/CocoaPods/issues/4203

신고
Posted by 초프(초보 프로그래머)
Programming/iOS2015.10.06 16:54



Action Extension Target을 추가하여 이전까지 문제 없이 사용하고 있었다.

오늘 업로드를 하는 과정에서 다음과 같은 오류가 발생하면서 더 진행이 되지 않는다......

검색과 삽질 끝에 해결은 했다.

Extension 자체는 Framework를 copy하지 않기 때문에 App이 가지고 있는 Framework를 사용해야 한다고 한다.

cocoapods로 Extension Target에 framework를 추가했었는데 이 부분이 문제였다.

이전 까지 문제 없다가 iOS9 출시 후 부터가 문제가 되기 시작했다.

Extension Target에서 cocoapods의 흔적을 다 지우고 다음 링크에 있는 방법대로 하면 된다.

https://hanseihee.wordpress.com/2015/01/14/xcode-cocoapods-with-today-extension/


---- 수정 ---

https://github.com/CocoaPods/CocoaPods/issues/4203

신고
Posted by 초프(초보 프로그래머)
Programming/iOS2015.02.11 15:35

다국어 지원을 위해 NSLocalizedString 을 하면 아이폰 디바이스의 언어 설정으로 문자열을 가져옵니다.

만약 앱 안에서 언어 설정을 변경하고 싶다면 어떻게 해야 할까??


검색을 해보면 가장 많이 나오는 방법은 아래와 같다.


[[NSUserDefaults standardUserDefaults] setObject:@[ @"ko" ] forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];


NSLocalizedString이 AppleLanguages에 설정된 언어에서 가져오므로 잘 동작한다.

하지만 문제는 앱을 재 실행해야 한다는 것이다. 설정 하나 바꿨다고 앱을 재 실행하라고??


내가 찾은 방법은 다국어를 가져올때 특정 언어 Bundle에서 가져오도록 하는 것이다.


NSString *bundlePath = [[NSBundle mainBundle] pathForResource:@"Localizable" ofType:@"strings" inDirectory:nil forLocalization:@"ko"];
NSBundle *localizableBundle = [[NSBundle alloc] initWithPath:[bundlePath stringByDeletingLastPathComponent]];
NSLocalizedStringFromTableInBundle(key, nil, localizableBundle, nil);


위 코드에서는 디바이스 언어와 상관없이 모두 한국어로 다국로 문자열을 가져오게 하였습니다.

이 코드를 적용해도 바로 화면의 언어들이 변경되지는 않을 것 입니다.

추가 적으로 뷰를 새로 그려지게 하면 됩니다. 언어를 일일이 다시 설정하는 방법도 있겠지만..... 전 window.rootViewController를 새로 설정했습니다.


AppDelegate *appDelegate = [UIApplication sharedApplication].delegate;
appDelegate.window.rootViewController = viewController;


이제 설정할때마다 새로 화면을 불러와서 원하는 언어대로 표시합니다~!


신고
Posted by 초프(초보 프로그래머)
Programming/iOS2015.01.27 17:16

실행할 디바이스가 시뮬레이터인지 아닌지를 확인하는 매크로가 있다.

이걸 확인하는 방법은

#ifndef TARGET_IPHONE_SIMULATOR

#endif

가 아니다!!!!

#if !TARGET_IPHONE_SIMULATOR

#endif

이거다....

신고
Posted by 초프(초보 프로그래머)
TAG ios, Xcode
Programming/iOS2014.09.04 23:54

xcode osx 10.5 -> 10.6 으로 변경한 경우 발생한 에러


문제발생

xcode osx 10.5 -> 10.6 으로 변경한 경우 발생한 에러


해결방법

In build settings set "Implicitly link Objective-C Runtime Support" to NO.


출처

http://stackoverflow.com/questions/15433262/updating-older-code-from-os-x-10-6-to-10-7

신고
Posted by 초프(초보 프로그래머)
TAG OSX, Xcode
Programming/iOS2014.02.06 19:02

회사 개발팀 블로그에 Bots 적용 사례에 대한 글을 올렸습니다.



전체 글은 다음 링크로...

http://bigmatch.i-um.net/2014/02/xcode-bots-%EC%A0%81%EC%9A%A9/


신고
Posted by 초프(초보 프로그래머)
TAG Bot, CI, ios, iphone, Xcode
Programming/iOS2013.10.14 18:42

Xcode5 에서 iOS 6.1 target 으로 빌드를 해도 레이아웃이 이상해지는 현상이 발견됩니다.

그중에서 가장 큰 문제는 ViewController의 view가 NavigationBar 밑에 있어 가려진다는 것입니다.

구글신의 도움으로 다음과 같은 코드를 넣으므로써 해결했습니다.

self.navigationController.navigationBar.translucent = NO;
self.navigationController.toolbar.translucent = NO;

출처 : http://stackoverflow.com/questions/18935079/views-converted-to-ios7-flow-under-navigation-bottom-bars-in-ios6

신고
Posted by 초프(초보 프로그래머)
Programming/iOS2013.09.24 12:44

XCode 새버전으로 업데이트 하기 전에 아래 경로에서 sdk파일들을 복사해 다른곳에 보관하도록 한다.


/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs


Xcode 업데이트 후 위 경로에 복사했던 파일들을 붙여놓으면 하위버전으로 빌드가 가능함

신고
Posted by 초프(초보 프로그래머)
TAG Xcode
Programming/iOS2012.08.17 02:14

설치 프로그램으로 설치했다가 최신 업데이트하려고 보니 appstore에 xcode가 있네?? 

이왕이면 앱스토어를 이용하는게 업데이트때 편하다는 판단에 기존의 xcode를 제거하려고 합니다.

제거 방법은 다음과 같습니다.


sudo /Developer/Library/uninstall-devtools --mode=all

신고
Posted by 초프(초보 프로그래머)