아이폰어플개발정보2010. 10. 22. 17:23
[아이폰 앱 개발] Converting plist to binary plist- 서버측에서 objective -c로 변환후 아이폰으로 보낼때 서버측

  Converting plist to binary plist
 

Apple strongly recommends using the binary plist format when reading large XML-based data sets into iPhone apps. Among their reasoning is the fact that XML parsing is very taxing on the iPhone. However, this requires that files residing on the remote web server be converted first.

For frequently-changing content, it is not acceptable to do this manually. If at all possible, I'd like to avoid having a web based app call the command line to perform the conversion (i.e., plutil).

Are there publicly available algorithms to perform this conversion?

    264440        Brian Cline        objective-c  cocoa  cocoa-touch  iphone  core-foundation  


 

Yes. All the plist code is part of CoreFoundation, which is opensource. CoreFoundation can be directly built and run on Linux and Windows, so you can write a CF tool using the normal APIs you would use on Mac OS X, but build and run it on other platforms.

The particular API you want to be looking at is CFPropertyListWriteToStream(). The code for CoreFoundation is available from Apple (tarball), among other places.

Finally depending on how often you update the file, how much processor you have to spare on the server, and how much repetition there is your data there may be one significant enhancement left that you can do. By default certain elements in binary plists are uniqued (such as strings). Other elements are not (such as arrays and dictionarts). The binary plist format allows them to be uniqued, the issue is that it is expensive to actually walk through and unique arrays and dictionaries. If you have a lot of identical arrays or dicts in your content you may see a significant size reduction by uniquing them. You can enable that by hacking up _flattenPlist() inCFBinaryPlist.c.

If you do that make sure to test it very thoroughly, and do not do on any files you cannot update over the network, just in case a future release makes any optimizations that break that. Also, make sure you are ready to turn it off at a moments notice.

    264489        Louis Gerbarg        objective-c  cocoa  cocoa-touch  iphone  core-foundation  


  Thanks, this helps a lot. I'll probably be building this and wrapping some of these functions into a PHP module. #121576    Brian Cline


 

It's not clear if you want to do the conversion on the iPhone or on the server. If it's on the server and you can use the Cocoa frameworks, the NSPropertyListSerialization provides services to convert between the supported plist types (string, XML, and binary) on OS X (since 10.2). There are also analogous methods in the Core Foundation library if you'd prefer to use that instead.

To convert an XML plist to a binary one:

NSString *xmlPlistPath; // already set
NSString *outPath; // already set


NSData *plistData;
NSString *error;
NSPropertyListFormat format;
id plist
;
plistData
= [NSData dataWithContentsOfFile:xmlPlistPath];

plist
= [NSPropertyListSerialization propertyListFromData:plistData
mutabilityOption
:NSPropertyListImmutable
format
:&format
errorDescription
:&error];

if(plist == nil) { // unable to parse plist
//deal with failure -- error gives description of the error
} else {
binaryPlistData
= [NSPropertyListSerialization dataFromPropertyList:plist
format
:NSPropertyListBinaryFormat_v1_0
errorDescription
:&error];
if(binaryPlistData == nil) {//unable to create serialized plist
// deal with failure -- error gives description of the error
}

if(![binaryPlistData writeToFile:outPath atomically:YES]) {
// unable to write file
}
}

See Property List Pramming Guide page on developer.apple.com for more information.

Posted by 오늘마감

댓글을 달아 주세요

아이폰어플정보2010. 6. 26. 00:20
아이폰으로 밤하늘과 행성정보를 보는 무료앱 - Planets (아이폰, 아이팟터치, 추천)

앱스토어 평점 : 3.5 / 5.0

앱스토어 연결 : 무료버전

오염과 불빛때문에 도심에서 밤하늘의 별 보기 정말 어렵습니다. 가상으로나마 아이폰으로 밤하늘의 별들을 볼 수 있는 무료앱이 있어 소개합니다. Planets는 하늘을 2D, 3D로 보여주고 태양계 행성들에 대한 정보와 3차원 모습을 볼 수 있습니다. 무료앱이지만 쓸만한 정보를 담고 있습니다.

밤하늘의 별보기 - 2D

가장 기본이 되는 기능인 하늘을 보는 기능입니다. 밤에는 별자리를 보여줍니다. 상단의 SN(남북) WE(동서) 버튼을 누르면 하늘이 회전해 사용자 위치와 비슷하게 맞춰서 볼 수 있게 해줍니다.

이 화면은 낮에 본 화면입니다. 낮에는 별자리가 아닌 태양과 행성 위치가 보이네요.

행성을 클릭하면 행성에 대한 간략한 정보를 볼 수 있습니다. 자세한 정보는 Visibility 메뉴를 이용하면 됩니다.

밤하늘의 별보기 - 3D

2D 하늘을 3차원으로 볼 수 있는 기능입니다. 터치&드래그로 이리저리 돌려가면서 볼 수 있습니다.

2D와 달리 별자리명과 행성명까지 표기되네요. 별자리들 사이로 보이는 행성은 토성(Saturn)입니다.

여러가지 View 모드들을 제공하는데요. 배경화면이 바뀌는 것 외엔 별다른 효과는 없습니다.

X-Ray, Visible(일반모드), Hydrogen α, Infrared, Microwave, Radio등 총6가지가 있습니다.

행성 정보 보기

위에서 간략하게 볼 수 있었던 행성정보를 상세하게 볼 수 있는 항목입니다.

태양계의 거의 모든 행성에 대한 정보를 볼 수 있습니다.

시간과 막대그래프는 행성을 볼 수 있는 시간대를 나타낸 것입니다.

태양을 예를 들면 오전 6시 39분 부터(일출) 오후 6시 41분 까지(일몰)볼 수 있는 것으로 나옵니다.

달에 대한 정보를 보니 언제 달모양이 변하는지 명칭이 무엇인지 자세하게 나옵니다. 3월 30일에 보름달이 뜨는군요.

이번엔 해왕성에 대한 정보입니다. 해왕성은 13개의 달을 갖고 있네요. 달의 명칭도 확인할 수 있습니다.

행성 보기

행성을 3차원 그래픽으로 보여주는 기능입니다. 지구의 제가 살고 있는(한국)을 보니 깜깜한 밤이네요.

이리저리 돌리고 확대/축소할 수 있습니다.

달과 화성을 본 모습입니다.



출처 : http://blog.naver.com/PostView.nhn?blogId=ghostsbs&logNo=102611812
Posted by 오늘마감

댓글을 달아 주세요

아이폰어플정보2010. 6. 25. 15:27
아이폰으로 들어온 케이웨더! 이제 기본날씨앱은 안녕~!

앱스토어 평점 : 3.0 / 5.0

앱스토어 연결 : 무료버전

아이폰에 기본 내장되 있는 날씨앱은 간단하고 편리하긴 하지만 데이터를 해외에서 끌어와서 그런지 신뢰성이 떨어지는 느낌이었습니다. 어차피 국내 날씨 예보도 많이 틀리지만 조금이라도 더 정확하면 일상생활에 조금이라도 도움될 것입니다.

특히, 케이웨더는 630 날씨 예보 사이트를 운영하는등 국내에선 알아주는 날씨 정보 제공 업체이니 신뢰가 갑니다.

케이웨더앱을 실행시키면 왼쪽스샷처럼 날씨가 자세하게 나옵니다. 오늘, 내일, 모레 3단계로 볼 수 있는 탭부터 오늘날씨를 새벽, 아침, 낮, 저녁 4단계로 나누어서 보여주고 주간예보까지 보여주니 이만하면 무료 날씨 앱치고는 최고가 아닐까 싶습니다. 제가 아는 지인분은 사파리로 다음이나 네이버날씨 사이트를 북마크해 놓고 보시는데 이젠 간단하게 케이웨더앱만 실행시키면 됩니다.

그러나 맨 처음 실행시키면 엉뚱한 지역의 날씨가 출력되는데요 '지역설정' 메뉴로 들어가면 오른쪽스샷처럼 지역을 설정할 수 있습니다. 여러지역을 한꺼번에 설정해 놓을 수 없는건 아쉽군요.

현재날씨 정보를 보면 풍향, 습도, 풍속, 강수량등자세한 날씨정보를 얻을 수 있습니다. 풍속은 산책이나 조깅할 때 참조하면 좋겠고요. 전 건조한게 싫어서 가습기를 자주 트는데 습도 정보가 도움될 것 같네요..

날씨채널을 보면 날씨예보 동영상을 틀어줍니다. 예쁜 기상캐스터를 보면서 날씨 정보까지 얻을 수 있으니 일석이조 입니다.

기상캐스터가 이쁘네요.^^ (동영상은 와이파이되는 곳에서만 봅시다.)

마지막으로 날씨정보에 사용되는 아이콘 설명을 자세하게 해놨습니다.

간단하게 현재날씨만 확인하려는 사용자나 자세한 날씨를 원하는 사용자나 둘 다 만족할만한 앱이라 생각되고요.

간단하고 사용자 편의성도 좋아 맘에 듭니다.

케이웨더앱을 다운받고 기본날씨앱은 잘 안보이는 곳으로 옮겨놨습니다. 안쓰는 기본앱은 삭제할 수 있다면 얼마나 좋을까요?



출처 : http://blog.naver.com/PostView.nhn?blogId=ghostsbs&logNo=106526891
Posted by 오늘마감

댓글을 달아 주세요

아이폰기본사용2010. 6. 23. 21:13
아이폰으로 활용하고 있는 수많은 기능들 정리

[아이폰/아이폰사용법]

아이폰으로 활용하고 있는 수많은 기능들 정리

1. 다이어리 : Momento 등의 다이어리 어플로 사진과 함께

다이어리를 작성, 관리.

2. 메일 : 메일계정을 POP, imap등으로 연동하여 언제

 어디서나 메일을 확인, 발송 가능. 푸쉬 기능으로 

실시간으로 메일 수신을 알려 줌.

3. 메모, 캘린더, 일정관리 : 어썸노트, 2do, Pocket Agent 등의

 어플을 활용하여 메모, 일정관리

4. 무료문자메시지 : SKT, SHOW 등에서 무료로 제공하는

무료문자를 사용

5. 버스 실시간 조회 : 서울, 경기도권 버스들의

 실시간 위치 및 근처 정류소들을 검색할 수 있음.

6. 지하철, 기차, 고속버스 지하철역, 출발시간,

출구 정보등 조회

8. 카메라 : ▷ Hipstamatic, Toycamera, Tiltshiftgen 등의

여러 카메라 어플을 사용하여 다양하고 퀄리티 높은 사진 촬영

▷ Pano, Auto Stitch, Videopano 등의 어플들을

사용하여 파라노마 사진을 손쉽게 만들수 있음.

▷ 수많은 후보정, 수정 어플들로 간단한 사진

수정과 수많은 효과를 줄 수 있음.

9. 캠코더 : 모바일 캠코더 치고는 상당한 수준의 캠코더 기능.

어플을 활용해 동영상 편집 가능.

10. 날씨 조회 : 날씨 정보를 조회하거나 WorldView,

Moxierweather 어플을 활용하여 실시간으로 세계 각국,

서울 명소 사진을 볼 수 있음.

11. 맛집 검색 : 라스트서퍼, 야후거기, 플레이맵등의

 어플을 사용하여 추천 맛집 검색 가능.

12. 은행 : 기업은행, 신한은행, 하나은행 등의 어플을

사용해 계좌이체 등의 인터넷뱅킹 가능

13. 가계부 : 여러가지 가계부 어플들을 사용해 체계적으로

가계부를 작성 할 수 있음.

14. 뉴스 : 각 언론사들의 어플을 활용해  인터넷, 실시간,

 동영상 뉴스를 편하게 볼 수 있음.

15. 전자사전 : YBM 영한사전, 옥편, 국어사전, 일어사전, 

번역 등의 전자사전 이상의 기능.

16. GPS 어플 : Runkeeper, Bikemate 등의 어플을 사용하여

 사이클이나 런닝, 마라톤등 운동의 경로, 속도,

 페이스 등을 기록 할 수 있음.

17. 네비게이션 : 전문 네비게이션에 비해 아직 부족하긴

하지만 네비게이션을 따로 구매하는것보다는 저렴한

가격으로 활용 가능

18. 메신저 :  MSN, 네이트온 등을 언제 어디서나 사용할 수 있음.

19. 쇼셜네트워크 : 트위터, 페이스북, 미투데이

 등 SNS 어플을 사용하여 언제어디서나 SNS 사용 가능

20. 지도 : 다음맵, 네이버맵, 구글맵 등 지도 어플과

 나침반 기능을 활용하여 현재위치를 확인하거나

목적지를 검색하여 쉽게 찾아갈수 있음.

21. 게임 : 일반 핸드폰이나 국내 스마트폰 게임보다는

훨씬 완성도있는 다양한 종류의 게임을 즐길수 있음

22. 환율 정보 : 환율 실시간 확인, 나라별로 확인 가능.

23. 증권 정보 :  각 증권사의 어플로 증권정보를 실시간 확인

24. 노래방 가수별 노래검색, 곡번호 찾기 등

25. 로또 : 당첨 번호 확인, 랜덤번호 생성.

26. 아이팟 : MP3, 동영상 재생등 PMP 기능.

27. 국내 및 해외 스트리밍 라디오

28. 실시간 교통량 확인 : 고속도로 및 주요

도로 실시간 교통량 확인

29. 실시간 스트리밍 어플 활용 : 아프리카,

MOSS 어플등을 활용해 TV, 라디오, 고속도로 캠 등을 볼 수 있음

30. UCC : 다음TV팟, 유튜브 등 UCC 동영상을 볼 수 있음.

31. Airvideo 어플을 활용하여 컴퓨터에 저장된

동영상을 실시간으로 볼 수 있음.

32. 스트리밍 뮤직서비스 사용가능 : 소리바다,

 벅스뮤직 등 스트리밍 뮤직서비스 사용가능.

33. 웹툰 : 네이버웹툰, 다음만화 등 웹툰을 볼 수 있음.

34. 만화책 : iComic, TouchComic 등의 어플로 만화책을 볼 수 있음.

35. E-Book : 스탄자, 리디북스 등의 어플을 이용해

 텍스트파일을 직접 넣거나, 인터넷서점에서 구입하여

 E-Book을 볼 수 있음.

36. 문서 보기/수정 : 굿리더, 퀵오피스 등의 어플을

 사용하여 엑셀, 워드, PDF, 파워포인트 등의

문서파일을 볼 수 있음.

37. 인터넷 웹서핑

38. 원격조종,지원 : RDP, VNC, Teamviewer 등의

어플을 사용하여 원격조종, 원격지원 가능.

39. WOL : 공유기에 접속하거나 WOL 어플을 사용하여

 컴퓨터 원격 부팅 가능

40. 리모콘 : Remote, RemoteX 등의  어플을 활용하여

 PC 동영생재생기, mp3플레이어, iTunes 등의 리모콘 역할

41. 터치마우스 기능 : 프리젠테이션, HTPC 등을

 사용 할 때 유용하게 활용 할 수 있음.

42. 인터넷 쇼핑 검색, 쇼핑 : G마켓, 오!빙고,

인터파크 등의 어플을 사용하여 인터넷 쇼핑 검색, 주문 가능.

43. 택배 조회 : 택배 어플등을 활용하여 택배

배송현황 실시간 조회 가능.

44. 문서 스캔 : 스캔어플을 사용하여 문서 촬영후

 스캔한것 같은 효과를 줄 수 있음. 업무를 볼 때

 유용하게 사용할수 있음.

45. 그림그리기 : 스케치북 어플등을 사용하여

 그림을 그릴수 있음.

46. 공부 : 단어장, 북앤딕, 영어 공부, 한국사, 한자 

어플등을 활용 하여 공부를 할 수 있음.

47. 바코드 검색 : 바코드로 상품 정보를 검색하여

가격비교를 할 수 있음.

48. 계산기 : 기본계산기 및 계산기 어플을 활용,

공학용 계산기 수준.

49. 음성메모 : 녹취 가능.

50. 노래 가사 검색 : AutoLyrics 등의 어플을 활용, 

노래 가사를 검색.

51. 웹하드 : Dropbox, Ndrive 등을 사용해 웹하드를

컴퓨터와 연동하여 사용가능하고, 어플에서 문서,

 비디오 등을 볼 수 있음.

 


출처 : http://blog.naver.com/PostView.nhn?blogId=mytelelink&logNo=20103659151
Posted by 오늘마감

댓글을 달아 주세요

아이폰어플정보2010. 6. 20. 23:17
아이폰으로 아프리카 시청 / DMB가 없어도 괜찮아!

우리의 아이폰은 단점으로 DMB가 없다를 꼽으셨어요..

하지만 실시간방송이나 실시간 정보습득을 하기 위해선 여간 손품을 많이 팔아야하는게 ..

아이폰이기도 하지요 ^^/

그래서 친구를 기다리거나.. 커피숍에서 한잔할때 따분할때.. 사용하면좋지요!

아이폰의 아이튠즈를 이용하여 한글로 아프리카를 처서 손쉽게 어플을 다운 받으실수 있습니다.

 요기 클릭하시면 바로 아프리카 어플을 다운받으실수있습니다.

아프리카TV를 다운 받았으민 망설이지말고 클릭질을 합니다.

아프리카 티비 로딩화면입니다.

사용법은 무척간단해서 설명을 안해도 잘아시리라 믿습니다.

원하는방송을 포착하셨으면 클릭!

회선 속도에 따라 버벅임 끊김이 있으며 빠른화면이 넘어갈경우 화면이 선명하거나 그러진않습니다.

다만 보기 좋다 볼수 있다.. 인지할수 있다 볼만하다.. 이런 느낌입니다..

그러나!

인터넷으로 하는 실시간 방송이므로  3g 망으로 연결시 강제 종료 되며 wifi망이 없을 경우도 강제종료가 되어버립니다.

그러므로 ^^ 네스팟존 , wi-fi망이 살아있는 곳에서 보시면 무척 편리한 어플리케이션이 되지 않을까

싶습니다.



출처 : http://blog.naver.com/PostView.nhn?blogId=artsoflife&logNo=30076506867
Posted by 오늘마감

댓글을 달아 주세요