2016-12-30 59 views
1

我遇到了將OneSignal與我的Xamarin.IOS應用程序集成的問題。我從零開始創建應用程序,然後在他們的網站上按照sdk指南進行操作,但是,一旦嘗試將其部署到我的蘋果設備中,然後添加SDK後,我會收到下面的錯誤消息。Xamarin.iOS在部署時遇到OneSignal問題

在部署到模擬器時不會發生這種情況,並且我嘗試了兩種不同的Apple設備。

Error Screenshot

更新

這個問題似乎是與我的版本的單框架。我正在使用Visual Studio for mac預覽,它使用單聲道版本4.8,但是,這仍然在alpha分支。

然後我使用Xamarin Studio並將單聲道降級到4.6(穩定版),一切正常。

+0

請不要張貼錯誤,截圖,粘貼錯誤的文字。這使得搜索錯誤的人可以找到這個問題,並且還可以更容易地搜索錯誤。另外,你能提供一個MCVE(最小的,完整的,可驗證的例子嗎?)http://stackoverflow.com/help/mcve – jgoldberger

+0

你已經使用Native Libray橋嗎?請確保使用的靜態庫是FAT庫,而不僅僅是模擬器。 – Darshana

+0

嗨,謝謝你的回覆,這是我在StackOverflow上的第一篇文章,所以在未來我會讓我的帖子對搜索的人更有用 –

回答

0

看來你是從iOS本機庫(.a文件)使用OSNotificationPayload類。該錯誤意味着該庫未被加載用於當前體系結構。 由於其在模擬器上的工作,.a僅適用於模擬器。

您可以驗證這一點使用前列命令:

lipo -info YourLibrary.a 

獲取設備和模擬器都某文件並從它產生的脂肪庫,並使用它。它會解決你的問題。

這裏就是命令來創建通用FAT庫 - 從here複製:

lipo -create -output libMyLibrary.a libMyLibrary-i386.a libMyLibrary-arm64.a libMyLibrary-armv7.a 
+1

感謝上述,它證明是有用的,並且實際上解決了我遇到的其他問題,然而,當我將我的單聲道版本降級到4.6的穩定版本時,這個特定問題自行解決 –

相關問題