2013-02-12 2 views
2

우리는 iCloud에 일부 정보를 저장해야하며 기기간에 동기화되어야하는 앱을 개발하고 있습니다.사용자가 iCloud를 사용하도록 설정

이렇게하려면 사용자가 강제로 앱용 iCloud를 사용하도록 설정해야합니다.

앱을 실행 한 후 사용자에게 iCloud를 사용하도록 경고하고 다시 시도하지 않으면 앱에 iCloud가 사용 설정되어 있는지 확인하면됩니다. iCloud를 사용하지 않으면 사용자가 앱에 들어갈 수 없습니다.

Apple에서 허용할까요?

사용자가 강제로 iCloud를 사용하도록 설정할 수는 없지만 사용하도록 설정했는지 여부는 사용자가 결정합니다. 내 이해가 맞습니까?

+1

나는 당신이 할 수있을 것이라고 상상할 수 없다. iCloud를 사용하지 않은 사용자이고 앱에서 iCloud를 사용하도록 강요했다면 즉시 제거 할 것입니다. –

+0

잘하고 싶다. 할 수있다. 경고가 뜬다. – IronManGill

+0

많은 사용자에게 이것은 거래 차단기가되며 앱을 사용하지 않을 것이다. – pilkch

답변

2

예, 이해가 정확합니다. 사용자가 강제로 기기에서 iCloud를 사용하도록 설정할 수는 없습니다. 그리고 그것은 좋은 것입니다.

당신은 이것을 재고해야합니다. 하나의 장치 만 가진 사용자는 어떻습니까? 이러한 사용자가 앱과 함께 iCloud를 사용하도록 강요 할 필요는 없습니다. 동기화 할 다른 장치가 없습니다.

결국 iCloud를 사용할 수 있는지 확인할 수 있습니다. 그렇지 않은 경우 앱에 알 수없는 이유로 사용자에게 앱이 필요하다는 사실을 알리고 앱을 계속 사용하지 못하게 할 수 있습니다.

Apple이 허용할지 여부는 여기 아무도 말할 수 없습니다. 사용자로서 iCloud가 활성화 된 경우에만 작동하는 앱에 만족하지 않을 것입니다. 그것은 사용자의 선택이어야합니다.

+0

이것에 대한 귀하의 의견을 보내 주셔서 감사합니다. 애플이이 문제를 해결할 수 있는지를 확인하기 위해 애플 개발자 포럼에이 질문을 올리겠다. 사용자 관점에서 나는 완전히 당신에게 동의한다. – Subhash

0

iCloud가 기기에 설치되어 있는지 확인해야합니다. 따라서이 코드를 사용하십시오

- (void)applicationDidBecomeActive:(UIApplication *)application 
{ 
    NSFileManager *fileManager = [NSFileManager defaultManager]; 
    NSURL *iCloudURL = [fileManager URLForUbiquityContainerIdentifier:nil]; 
    NSLog(@"%@", [iCloudURL absoluteString]); 

    if(iCloudURL){ 
    NSUbiquitousKeyValueStore *iCloudStore = [NSUbiquitousKeyValueStore defaultStore]; 
    [iCloudStore setString:@"Success" forKey:@"iCloudStatus"]; 
    [iCloudStore synchronize]; // For Synchronizing with iCloud Server 
    NSLog(@"iCloud status : %@", [iCloudStore stringForKey:@"iCloudStatus"]); 
    } 
} 

이렇게하면 iCloud 상태를 확인할 수 있습니다. 여기에서 참 및 거짓 사례에 대한 확인을 할 수 있으며, 거짓 인 경우 설정에서 iCloud가 활성화되었을 때 사용자가 다시 시도 할 수 있도록 경고 메시지와 함께 앱을 종료 할 수 있습니다.

희망이 도움이됩니다! :)

PS : - 위 코드를 구현하는 과정에서 처음에는 내가 알고있는 iCloud의 인 타이틀먼트와 기본 사항을 구현해야합니다.

+0

그것은 사용자의 전화입니다. 당신은 그에게 무엇이든하도록 강요 할 수 없습니다 ... 할 수있는 일은 그가 iCloud를 구현할 때까지 앱을 열지 못하게합니다 ... – IronManGill

관련 문제