아이폰에서 두개의 앱간에 데이터를 공유하기 위한 방안이 필요하여 한번 알아보았다.

역시나 방법은 별로 없다. ;;;

우선 기본적으로 아이폰은 샌드박스형으로 타 앱과 공유를 할 수 없다.

다만, 일부 지원과 편법을 이용할 수는 있다.


1. 정식(?)

   1) URL Scheme 이용.

      ; 해당 앱을 알고 있는 경우에나 가능할 듯.

      예제) 발송측 : [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"theOtherApp://dataToShare"]];

            수신측 : -application:handleOpenURL: 


  2) UIPasteboard 을 이용.

      ; Copy&Paste 를 이용하는 것인데, 다른 것이 복사가 되면 이전 데이터는 안녕~

      예제) UIPasteboard* board = [UIPasteboard generalPasteboard];

               board.string = @"Some string to share";


      ; 위의 메소드를 이용할 경우에는 덮어쓰기로 인해 데이터가 저장이 안되지만, 각 paste 별로 네임을 줄 경우 유지가 됨. 중간에 @"Copy1"이라는 이름으로 다른 앱에서 덮어쓰기를 할 수도 있지만, 쉽게 공유되지 않는 명칭을 준다면 앱간 데이트를 잠시 동안은 공유가 될 것 같음. 데이터 유지 조건은 가이드 확인 필요. (2013.04.24) (https://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIPasteboard_Class/Reference.html)

      예제)

    - Copy

     UIPasteboard *paste = [UIPasteboard pasteboardWithName:@"Copy1" create:YES];

     paste.persistent = YES;

     [paste setString:@"Copy1 String"];

    - Paste

      UIPasteboard *paste = [UIPasteboard pasteboardWithName:@"Copy1" create:YES];

      NSLog(@"paste : %@", [paste string]);



2. 꼼수

  1) Address Book 이용

     : 주소록에 더미데이터를 추가해서 이용. 사용자에게 안 좋아보임.

  2) KeyChain 

     : 작은 데이터라면 이용해볼만할 듯. NSDictionay로 객체를 넣어서 사용한다고도 함.

    -> Bundle Seed Id를 이용하여 공유가 가능.

        참고 URL : http://shaune.com.au/ios-keychain-sharing-data-between-apps/

 3) 공유된 폴더로 Read/Write

     :  /var/mobile/Library/AddressBook, Keyboard, Preferences 에 접근해서 사용.

       SDK 사용 룰에 위배되어서 리젝의 가능성 있음.



참고 URL

  - http://stackoverflow.com/questions/2091912/data-share-between-two-iphone-apps

  - http://stackoverflow.com/questions/8228725/is-there-a-shared-pool-of-memory-for-files-in-ios

  - https://developer.apple.com/library/ios/#documentation/FileManagement/Conceptual/FileSystemProgrammingGUide/FileSystemOverview/FileSystemOverview.html#//apple_ref/doc/uid/TP40010672-CH2-SW2


Posted by 프리지크
:
BLOG main image
인생에서는 찾고, 노력하고, 희생할 각오가 되어 있는 것만 얻을 수 있다. (조시 매슈 애덤스) by 프리지크

공지사항

카테고리

분류 전체보기 (121)
끄적끄적 (16)
좋은 글 (9)
자료 (19)
런닝&피트니스 (18)
기술 (43)
기사 스크랩 (1)
내가 본 공연 후기 (1)
내가 가 본 맛집 (5)
괜찮아 보이는 펜션들 (4)
(4)
한장한장 (0)
비공개 스크랩 (0)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :