2011-01-14 53 views
2

我目前銷售的僅限Mac的生產力工具使用視覺和音頻通知來提醒用戶發生某些事件。將通知從Mac發送到iPhone/iPad/iPod touch

我已經開始規劃該Mac程序的iPhone和iPad版本,並希望能夠提供從Mac到iPhone的通知服務,例如,而不是Mac播放音頻提示,iPhone可能會振動等。

我到目前爲止只做了很少的iPhone開發,而且我不確定各種推送通知服務是如何工作的。這很容易做到嗎?或者是「挑戰」。

一些更多的信息,可能相關的部分:

  • 會出現在iPhone和Mac版本之間基於Dropbox的同步,所以也「分享」的可能性的文件會促使一些動作

  • 的第一步不會有「背景」的通知,要求其iPhone客戶端運行它可能是可以接受的

我應該處理哪些認證問題?

回答

3

您需要在應用程序和服務器中實施APN(Apple推送通知服務)。

爲了澄清一些事情:

  1. 你需要一臺服務器做這些用戶的Mac/PC和他們的iDevices之間傳輸消息的工作。
  2. 您的服務器將決定何時向用戶設備推送何種通知。
  3. 之後,您的服務器會向Apple的APNs服務器發送消息,該消息會代表您推送該消息。
  4. 當APNs消息到達用戶設備時,您的應用完全可以在後臺甚至關閉。用戶將由操作系統指導打開您的應用程序。
  5. 如果用戶在其設備中明確禁用了應用程序的APN功能,或者如果用戶在APNs警報到達時取消了警報,那麼您的應用程序將不會啓動,如果它最初保留在後臺或者它沒有尚未公開。
  6. 當您的應用第一次啓動時,系統會要求用戶啓用(如您所認可的)您的應用的APN功能。

對於有經驗的iOS開發人員或有經驗的PHP開發人員來說,這不是一項具有挑戰性的任務,因爲Apple的文檔和API非常簡單。但是,服務器端的配置可能有點棘手。

我相信Stack Overflow已經有大量關於如何在iOS應用程序中啓用APN的信息。你需要做的只是在你的問題上具體,並預先做好搜索工作。

希望有所幫助。

+0

感謝您的幫助。從我剛剛閱讀的有關APN的文章中,看起來似乎不可能有這樣的直接路徑:我的Mac App - > APN - > myIDevice,但是我需要在某處運行Web服務器並去:我的Mac - >我的Web服務器 - > APN - > myIDevice,如果沒有單獨的開發人員運行Web服務器的需求,則無法運行通知。這是正確的還是我錯過了什麼? – 2011-01-16 12:07:29