2016-08-14 3 views
0

Я извлекая квитанцию ​​на устройстве пользователей, используя следующий код:Мой fileExistsAtPath оператор возвращает ложь, когда это должно быть правдой

let receiptUrl = NSBundle.mainBundle().appStoreReceiptURL 

я тогда проверить, чтобы увидеть, что значение receiptURL заключается в использовании:

print("receiptUrl is \(receiptUrl)") 

Моя консоль отображает местоположение как:

receiptUrl is Optional(file:///private/var/mobile/Containers/Data/Application/018CF51F-1F55-465B-AA98-B4AD5A864E06/StoreKit/sandboxReceipt) 

тогда я использую, если заявление:

if NSFileManager.defaultManager().fileExistsAtPath(receiptUrl!.path!) 
    { //do great security stuff 
    } 

Однако мой файлExistsAtPath всегда возвращает false. Очень расстраивает.

+0

Использовать полный utl – Wain

+0

Ничего, что я пытаюсь, возвращает false. – Tom

ответ

0

Правильный результат может быть. appStoreReceiptURL не показывает существующий путь. Просто покажите папку квитанции магазина. этот ответ относительный с this

+0

Спасибо за предложение Джей. У меня был взгляд, но я все равно не могу получить выше, чтобы оценить значение true, хотя, кажется, файл. Я думаю, что это может быть проблема с правами доступа к файлам. Это как если бы у меня не было прав, чтобы открыть эту конкретную папку, но мне нужно получить квитанцию ​​для проверки. – Tom

+0

[здесь] (http://stackoverflow.com/questions/24591415/appstorereceipturl-error) должен быть ответом на ваш вопрос. –

Смежные вопросы