2012-11-20 41 views
1

我已經嘗試過存摺教程: http://www.raywenderlich.com/20734/beginning-passbook-part-1 這是前一段時間在其他SO線程中推薦的。存摺未保存優惠券

一切都進行得很順利,除了:

  1. 我把.pkpass文件的本地Web服務器上,我試着點擊直接鏈接到該文件,希望它會在我的iOS打開SIM /設備,但我得到的只是「safari無法下載文件」。這也發生在Passbook編程指南中的正式iOS傳遞樣本上。在模擬器上,控制檯日誌中沒有出現錯誤。

  2. 我試圖把pkpass放在電子郵件中,從真實的設備打開它,它會出現好的,但是當我點擊「添加」時,優惠券不會添加到存摺。沒有錯誤出現。

  3. 我試着用passsource.com創建一個pass。如果我使用他們的「即時」方法,我會得到一張優惠券,而且我可以保存它。如果我選擇「下載pkpass文件」,然後如#1 /#2中所述使用它 - 同樣的錯誤。

使用正確的團隊ID和類型ID正確地簽署優惠券。

我的JSON是(我亂碼球隊/類型ID):

{ 
    "formatVersion" : 1, 
    "passTypeIdentifier" : "pass.com.xxx.xx.xxx", 
    "serialNumber" : "123", 
    "teamIdentifier" : "XXXXXXXX", 
    "organizationName" : "my brand", 
    "description" : "my coupon", 

    "logoText" : "logo text", 
    "foregroundColor" : "rgb(255, 255, 255)", 
    "backgroundColor" : "rgb(135, 129, 189)", 
    "labelColor" : "rgb(45, 54, 129)", 

    "barcode" : { 
     "message" : "650438-5103453453", 
     "format" : "PKBarcodeFormatPDF417", 
     "messageEncoding" : "iso-8859-1" 
    }, 

    "coupon" : { 
     "primaryFields" : [ 
      { 
       "key" : "offer", 
       "label" : "for you", 
       "value" : "Free hug" 
      } 
     ] 
    } 
} 

我測試了JSON與在線驗證工具,它是有效的。

任何想法爲什麼優惠券沒有保存/下載?

tnx

回答

3

我剛發現問題的原因。看起來仿真器支持從Sim上的Finder拖放pkpass。如果我這樣做,我會在系統日誌中看到詳細的錯誤消息(我正在使用控制檯應用程序),所以我發現問題: 1.我在創建manifest.json中的sig後更改了我的json,所以我更新sig 2.如果我希望pkpass文件作爲來自Web服務器的傳遞,僅提供直接鏈接到它是不夠的,我還需要將內容類型更改爲application/vnd.apple.pkpass

在我處理了這兩個問題之後,我能夠從我的Web服務器提供pkpass文件。

+0

你能否詳細說明最後一部分。我問了一個問題,以便你可以在那裏回答並獲得信用。 http://stackoverflow.com/q/13846820/1015071 –

+0

好的提示關於從發現者拖到sim上。 – PassKit