xCode 4.5 for iOS 6.0 달라진 점(1)

2012. 9. 24. 11:32제2외국어/iOS

ah... 중간에 작성한 자료가 사라지는 바람에 다시 적게되는 ㅜ


 iOS 6.0이 정식으로 출시되고, 그에 따라 xCode도 4.5로 업데이트!!
기존의 경고도 없던 임시 프로젝트에서 경고들이 속속히 발생하게 되었다...

그래서 써보는 xCode 4.5에서 바뀌거나 추가된 것들






1. Deprecated :  더 이상 지원하지 않는 것들...

- modalViewController: Deprecated in iOS 6.0

automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers: Deprecated in iOS 6.0

dismissModalViewControllerAnimated: Deprecated in iOS 6.0

-  presentModalViewController:animated: Deprecated in iOS 6.0

shouldAutorotateToInterfaceOrientation: Deprecated in iOS 6.0

viewDidUnload: Deprecated in iOS 6.0

viewWillUnload: Deprecated in iOS 6.0


viewDidUnload, viewWillUnload 를 보면, 이제 개발자에게 메모리 관련된 것을 신경쓰지말라고 하는 것 처럼 보이며
modalView관련해서도 3가지 함수가 사라졌다. ( 편해진건지는 아직 모르겠다. )

내 프로젝트 중에서는 modal에 관련된 것 중 [self dismissModalViewControllerAnimated:YES]; 함수가 제일 많았는데
( 경고가 0->11로 11번이나 이 부분에서 경고가 떻다;; )


( 화살표 부분의 함수로 대체하면 된다. )

[self dismissModalViewControllerAnimated:YES] 를 [self dismissViewControllerAnimated:YES completion:nil] 로
대체하여 사용하면 해결된다.
- 단!! dismissViewControllerAnimated 이 경우 iOS 5.0이상부터 지원하니 그 이하 버전을 지원하는 경우 다른 방법을...




2. Changes in StoryBoard : 스토리보드에서 바뀐 점

: 가장 눈에 띄는건 이제는 단 2개 뿐이지만 iOS 에서도 파편화(?)가 생겼는데, 3.5-inch 와 4-inch  입니다.
( 물론 3.5를 그대로 써도 4-inch 화면에서 자동으로 젤 위와 아래에 검정화면이 생기면서 화면이 늘어나진 않습니다. )


( Retina (4-inch) 이 부분이 추가된 걸 알 수 있다. )


                -

( 화살표를 누르면 3.5 -> 4.0 인치 화면으로 바뀐다. iPhone5에 맞는 화면 )



    


Exit

스토리보드에서 처음 보이는게 또 보이는데 Exit 라는 겁니다.
기본 segue에 의한 순차적 화면전환을 벗어나게 해준다는 거라는데....
아직 확실치가 않습니다;;

ex) 기존 segue( modal 및 push/pop )에 의한 화면전환의 경우
순차적으로 1->2->3->4 이렇게 진행되었다면,

1->3, 2->4 이렇게 각각의 컨트롤러가 자신의 출구(혹은 입구)를 
가지게되어 어디든지 갈 수 있다는 것 같습니다.




dismissModalViewControllerAnimated , presentModalViewController:animated
이 두개의 함수가 사라진 이유가 있는 것 같습니다!








3. Map : Google -> Apple

: MKMapView, 즉 기본 mapView가 더 이상 구글 맵을 사용하지 않습니다. Apple Map을 사용합니다. 
  Google의 맵 서비스를 따라잡기 위한 노력이 많이 보이는건 사실이지만, 그 만큼 부족한 점도 수도없이 많습니다.

장점
- 위치 정보 검색 속도  > Google 운전 경로
- UI 디자인
- 3D (신기함 정도?)

단점
- 미국을 제외한 다른 나라의 경우 정보 미흡 
( 단적으로 우리 나라에서 지하철 표시도 되어 있지 않다!!! )
- 3D 가 아주 호러물 수준이다. 
( 구글에서 Apple Map을 치면 이상한 3D 맵 사진을 볼 수 있다 ㅡㅡ )

단점이 너무 나도 많기 때문에... 더 이상 기존의 맵뷰를 그대로 사용하면 욕을 엄청 먹을 가능성이 큽니다, 아니 확실합니다.

즉, 구글 API, 네이버 API 등을 사용.... 귀찮아지게 됬습니다.

Google Map API 사용하기
: 어떻게 보면 편법일지도 모르지만, Webview에 Google Map에 연결하여 Javascript를 통해 사용하는 방법입니다.
( iOS에서 Google Maps Javascript V3 API 실행하기 )





이렇게 개발자를 많이! 귀찮게 하는 업데이트는 오랜만에 보는 것 같습니다.
( 물론 업데이트는 무조건 개발자를 귀찮게 합니다. 공부 + 적용 )

이 밖에도 아래 문서를 통해 더욱 자세한 또는 제가 적지 않은 부분을 보실 수 있으실 겁니다.
잘못된 부분은 댓글로.. 더 좋은 정보가 있으시면 물론 댓글로 추가해주시면 감사합니다.


[참고 문서]
1. Xcode Release Notes
2. What's New in iOS
3. Xcode Organizer - Documentation