336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



XCode 8 버전 부터 OS_ACTIVITY_MODE가 추가 되었습니다.

os의 시스템관련 로그를 쭉 출력 해주는 모드인데 너무 많이 찍혀서 정작 

제가 개발을 하면서 출력하는 로그는 하나도 볼 수 없다는 단점있습니다.

안보이게 하는 방법은 생각보다 간단합니다.

1. product -> Scheme -> edit scheme -> environment Variables


2. environment Variables에 +클릭해서


3. Name 값에 OS_activity_mode 

    Value 값에 disable 


넣어 주시면 됩니다. 그럼 더이상 시스템 로그는 출력되지 않습니다.



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



안녕하세요. 

저는 iOS 개발을 하다보니깐 XCode를 가지고 개발을 합니다. 

회사 프로젝트라던지, 개인 프로젝트라던지 가끔 엉뚱하게도 "내가 짠 코드는 과연 몇줄일까??" 라는 생각을 하게됩니다.. ㅎㅎ (저만 그런건가요,,)


일단 터미널을 열고 라인 수를 보고자하는 프로젝트 폴더로 cd 명령어를 쳐서 들어갑니다.

cd를 치시고 한칸 뛴다음 폴더를 끌어 넣고 엔터를 치면 폴더 디렉토리로 이동하게 됩니다. (저는 잘 몰라서 일일히 찾아서 들어갔습니다.)


이제 그런후 밑에 명령어를 복사 붙여 넣기 하시면 됩니다.


Swift 만 사용 하셨다면

1
find . \( -iname \*.swift \) -exec wc -l '{}' \+
cs


Objective-C만 사용 하셨다면

1
find . \( -iname \*.m -o -iname \*.mm -o -iname \*.h \) -exec wc -l '{}' \+
cs


Swift와 Objective-C를 혼용해서 사용 하셨다면

1
find . \( -iname \*.m -o -iname \*.mm -o -iname \*.h -o -iname \*.swift \) -exec wc -l '{}' \+
cs


그리고 마지막으로 

Swift + Objective-C + C + C++

1
find . \( -iname \*.m -o -iname \*.mm -o -iname \*.c -o -iname \*.cc -o -iname \*.h -o -iname \*.hh -o -iname \*.hpp -o -iname \*.cpp -o -iname \*.swift \) -exec wc -l '{}' \+
cs


이렇게 명령어를 치시면 프로젝트에 포함되어 있는 파일 목록들이 나열되면서 마지막에 total 값으로 라인수가 나옵니다.


제가 Project9팀에 있을때 했던 프로젝트 결과값입니다. 3만5천 줄로 나오네요. 

아무래도 Pod나 framework도 포함 되다 보니깐 조금 과장되서 나오는 것도 없진 않지만 그래도 가끔 얼마나 길까 하면서 

알아볼때 유용하게 사용 할 수 있는것 같습니다.



출처 

http://stackoverflow.com/questions/7224569



'프로그래밍 > 기타' 카테고리의 다른 글

Color Scripter (코드를 블로그에 올리기)  (0) 2015.11.18
앱 개발에서의 권한 문제  (0) 2015.11.18
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

안녕하세요. 정말 오랜만에 글을 쓰는거 같습니다. 

iOS10.. Swift3.0으로 넘어오면서 정말,, 베타 나오면 바로 개인적으로 해야되는데 

iOS개발을 한건 별로 안되지만 그래도 7부터 10까지 업뎃되면서 가장 많은 변화가 있지 않았나 싶을정도 변화가 많았습니다.

특히 Range에 부분이 많은 부분 변경 되었습니다. 

오늘 포스트 할 내용은 텍스트안에서 특정 텍스트의 시작 location을 찾는 것입니다.

Objective-C와 Swift2.3이하 버전에서는 뭐랄까 편하게 찾을 수 있었던거 같은데 3.0부터는 많은 변화가 있었습니다.

(2.3이하 버전은 제가 테스트 할 수 있는 환경이 없어서 적지 않았습니다 ㅠㅠ 죄송합니다.ㅠㅠ)


Objective-C

1
2
3
4
5
6
7
8
NSString * str = @"테스트 텍스트 입니다.";
NSString * search = @"텍스트"
NSRange range = [str rangeOfString:@"how are you doing"];
if (range.location == NSNotFound) {
    NSLog(@"없는 텍스트 입니다.");
else {
    NSLog(@"loc %d, len %d", range.location, range.length);        
}
cs



Swift3.0

1
2
3
4
5
6
7
8
let str = "테스트 텍스트 입니다"
let search = "텍스트"
        
let range: Range<String.Index> = str.range(of: search)!
let location : Int = str.distance(from: str.startIndex, to: range.lowerBound)
let length : Int = search.characters.count
        
print("loc \(location), len \(length)")
cs


336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



앱스토어의 정보를 받아와서 최신 버전과 다르면 업데이트를 할 수 있게 하는 로직을 포함해서 심사를 맡겼는데 리젝을 당했습니다.

특별한 것은 없고 앱버전의 업데이트는 자기네 메카니즘을 따라야 한다는 내용입니다.

해결 방안으로는 단순히 업데이트 로직을 제거 해주면 해결되는 부분입니다.

업데이트가 필수적으로 필요한 시점이면 어떤 방식으로 해야되는지 정말 궁금해집니다.


(리젝 사유 본문)

Your app includes an update button or alerts the user to update the app. To avoid user confusion, app version updates must utilize the iOS built-in update mechanism. 

Next Steps

Please remove the update feature from your app. To distribute a new version of your app, upload the new app binary version into the same iTunes Connect record you created for the app's previous version. Updated versions keep the same Apple ID, iTunes Connect ID (SKU), and bundle ID as the original version, and are available free to customers who purchased a previous version. 



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



안녕하세요.

정말 오랜만에 글을 쓰는 것 같습니다.


이번 포스트는 아이폰 무음 모드에서도 소리가 나는 방법에 대해서 입니다.

음악 앱 또는 유튜브등 여러 앱들은 무음모드에서도 재생시 소리가 납니다. 

세팅을 해주지 않으면 동영상만 재생 될뿐 소리는 아무소리도 안나옵니다.

재생되기전 또는 ViewDidLoad()에 이 코드를 삽입 해주면 무음모드에서도 소리가 재생 됩니다.


(Obective-C)

1
2
3
AVAudioSession * session = [AVAudioSession sharedInstance];
[session setCategory: AVAudioSessionCategoryPlayback error: nil];
 
cs


(Swift)

1
2
3
4
5
6
do {
    try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
    try AVAudioSession.sharedInstance().setActive(true)
catch {
    print(error)
}
cs



'iOS 프로그래밍 > iOS' 카테고리의 다른 글

OS_ACTIVITY_MODE  (0) 2016.11.08
iOS)텍스트 위치 가져오기  (0) 2016.10.10
iOS)사진첩에 사진 저장하기  (0) 2016.06.12
iOS)디바이스 정보 가져오기  (0) 2016.06.08
iOS)딕셔너리 키값 정렬 하기  (0) 2016.06.06
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.




기본 정보

제목 : 세계 최고의 인재들은 어떻게 기본을 실천할까?

저자 : 도쓰카 다카마사(기업인)

가격 : 13,000원 -> 11,700원


저자 정보

이름 : 도쓰카 다카마사(기업인)

- 게이오기주쿠 대학교(경제학부)

- 하버드 비즈니스 스쿨

- 골드만 삭스

- 맥킨지앤컴퍼니

- 씨넥스트 파트너스


내용

  저자의 골드만삭스, 맥킨지앤컴퍼니에서의 실무 경험을 토대로 쓴 책이다. 일본 사람들이 자기 개발에 관한 책들은 잘 쓰는것 같다. 하루하루를 어떤식으로 보내며 리더십부터 인생의 목표까지 저자의 경험또는 저자 주위의 선후배들 경험을 토대로 설명해준다. 중간중간 읽는 사람의 상태를 점검해보고 적어 볼 수 있는 쉬어가는 구간이 있다(물론 생각을 많이 해야되는 것들이기 때문에.. 쉬는것 같지는 않다.) 다른 자기개발서와 비슷한 맥락이기 때문에 다른 도서들과 비슷한 내용이다. 일과 삶의 균형을 맞추라고 설명하고 있다. 한번도 자기 개발서를 읽지 않았거나 자신을 더욱더 발전 시키고자 하는 사람들에게 추천해주고 싶은 책이다. 물론 읽고 끝나는 것이 아니라 자기 삶에 적용을 시키는 것이 제일 중요하다.

기억에 남는 목차이다.

- 나라면 어떻게 할 것인지 끊임없이 물어라.

- 자신에 지기를 싫어한다.

- 이력서를 정기적으로 업데이트 한다.



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



안녕하세요. 개발자 myoung입니다.

개발을 완료 한 후 정말 역사적으로 앱스토어에 앱을 올릴려고 하는데 ENABLE_BITCODE 오류가 나서 당황할때가 있습니다.

그냥 개발을 할때는 문제가 없는데 말입니다.ㅠㅠ 이럴때는 당황하시지 말고

'Build Settings'에 있는 'Enable Bitcode'를 YES로 바꿔주시면 됩니다.


반대로 이런 오류가 난다면

You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64...

'Enable Bitcode' 옵션을 NO로 해주시면 됩니다.


BitCode 란?

Bitcode is an intermediate representation of a compiled program. Apps you upload to iTunes Connect that contain bitcode will be compiled and linked on the store. Including bitcode will allow Apple to re-optimize your app binary in the future without the need to submit a new version of your app to the store. For iOS apps, bitcode is the default, but optional. For watchOS and tvOS apps, bitcode is required. If you provide bitcode, all apps and frameworks in the app bundle (all targets in the project) need to include bitcode


비트 코드는 컴파일  프로그램의 중간 표현입니다비트 코드를 포함하면 아이튠즈 커넥트에 업로드앱은 컴파일 저장소에 연결됩니다비트 코드를 포함하면 애플 스토어에 앱의  버전을 제출할 필요 없이 미래에  바이너리를 다시 최적화할  있고iOS 앱의 경우 비트 코드 옵션은 선택 사항이고, watchOS  tvOS 앱의 비트 코드가 필수로 적용되어야 한다.  - iOS Developer Library



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



안녕하세요 개발자 myoung 입니다. Swift 기준으로 설명을 하겠습니다.


URL nil 오류 나는 문제에 대해서 해결 방안을 알아보겠습니다.

보통 URL을 정의 할때는 이렇게 정의를 합니다.

1
2
let urlPath: String = "www.naver.com"
let url: NSURL = NSURL(string: urlPath)!
cs

물론 URL 자체가 비어 있어서 nil오류가 나는 경우도 있지만 주소 자체에 한글이 포함된 경우 nil 오류가 나는 경우가 있습니다.

그런경우 해결 방법은

1
2
3
4
let str_temp = "http://devsc.tistory.com/admin/entry/post/한글"
let str_url = str_temp.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())!
 
let url: NSURL = NSURL(string: str_url)!
cs

이런식으로 String URLQueryAllowedCharacterSet을 통해 인코딩을 하면 간단하게 해결됩니다.


궁금한점이나 오류가 있으면 댓글을 달아주세요 :)



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



세번째로 소개할 앱은 워드북-영어편입니다.

영어단어를 공부 할 수 있는 앱입니다.

언어를 공부할때 제일 어려운게 단어를 몰라서 못 알아 듣거나 해석을 못하는게 아닐까 싶습니다. 

많이 듣고 많이 봐서 익숙해져야 되는게 또한 단어입니다. 

글로벌 시대에서 영어는 매우 중요한 언어입니다. 그렇기때문에 만든 앱입니다.


워드북-영어편

지원OS - iOS

가격 - 무료


기능

  • 4지선다, 주관식으로 빠르면서 가볍게 반복 숙달이 가능 단어 공부를 할 수 있습니다. 
  • TTS(텍스트 음성 변환) 기능을 통해 다음 단어로 넘어가면 발음을 확인 할수 있습니다.
  • 직접 단어 또는 숙어의 뜻을 적어서 단어장 등록 할수 있습니다.
  • 단어 분석을 통해 총 틀린 횟수를 확인 하여 많이 틀리는 단어를 한눈에 파악 할 수 있습니다.
  • 단어를 추가할때 기본 사전을 통해 정확한 뜻을 볼 수 있습니다.


스크린샷

 

 



336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



안녕하세요. 개발자 myoung 입니다. 

오늘은 저장하고 싶은 이미지를 사진 앱에 노출이 될수 있도록 저장하는 방법에 대해서 알아보겠습니다.

다른 특별한 옵션을 주지 않고 단순하게 사진을 저장할때 사용 할수있는 방법입니다.

생각보다 너무 간단하고 한줄로 끝납니다.


(Obejctive-C)

1
2
3
4
5
6
7
8
9
10
11
//필요한 부분에서 호출
UIImageWriteToSavedPhotosAlbum(your_image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo {
    if (error) {
        NSLog(@"error: %@", [error localizedDescription]);
    } else {
        NSLog(@"saved");
    }
}
cs


(Swift)

1
2
3
4
5
6
7
8
9
10
11
12
//필요한 부분에서 호출
UIImageWriteToSavedPhotosAlbum(img, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
 
func image(_ image: UIImage, didFinishSavingWithError error: NSError?, contextInfo: UnsafeRawPointer) { 
       //사진 저장 한후
       if let error = error {
           // we got back an error!
           Toast(message: error.localizedDescription).show()  
       } else {
            // save    
       }
}
cs


궁금한점이나 틀린점이 있으면 언제든지 댓글을 달아 주세요. :)



'iOS 프로그래밍 > iOS' 카테고리의 다른 글

iOS)텍스트 위치 가져오기  (0) 2016.10.10
iOS)무음에서 소리 나오게 하기  (0) 2016.07.19
iOS)디바이스 정보 가져오기  (0) 2016.06.08
iOS)딕셔너리 키값 정렬 하기  (0) 2016.06.06
iOS)랜덤 함수  (0) 2016.05.26

+ Recent posts