簡體   English   中英

來自Cydia的應用程序的Settings.bundle和鑰匙串不起作用

[英]Settings.bundle & keychain for applications from Cydia doesn't work

我正在開發與Cydia一起分發的應用程序。 因此,它通常安裝在/ Applications文件夾中,而不是通常的AppStore應用程序中的/ var / mobile / Applications /中。 我認為安裝給我帶來了一些大問題。 最初,用著名的Apple的KeychainItemWrapper進行鑰匙串讀寫根本不起作用。 另外,我的settings.bundle也無法正常工作。 應用程序設置未顯示在Settings.app中。

當我在Simulator中測試應用程序或什至將其從Xcode直接部署到設備(部署到/ var / mobile / Applications /)時,所有功能都像魅力一樣。

我嘗試通過將mobile:mobile作為所有者將已安裝的.app移至var / mobile / Applications / XXXXXX / myapp.app。 它沒有幫助。

任何解決方案,使這項工作?

設置包

越獄應用程序的設置略有不同。 您需要執行常規Settings.bundle 類似的操作,但有一些不同。

有關此信息,請參見此處

和這里

和這里

您應該使您的應用程序依賴於preferenceloader軟件包,這有助於越獄應用程序管理設置。 因此,您的DEBIAN /控制文件中將包含以下內容:

package: com.mycompany.MyApp
Name: MyApp
Version: 2.2-2
Architecture: iphoneos-arm
Depends: preferenceloader
Description: Do something for jailbreak iPhones
...

鑰匙扣

為了使鑰匙串對我的應用程序有效,我需要在二進制文件中添加權利 我發現需要哪些權利的方法是先以正常方式構建應用程序(不是越獄應用程序,只是使用Xcode的普通第三方應用程序商店應用程序)。 然后,我檢查了Xcode構建的二進制文件中的權利:

ldid -e MyApp.app/MyApp

然后將這些權利拼接為新的entitlements.xml文件。 有關適用權利的示例,請參見此處 我相信您的應用的權利應如下所示:

  <key>application-identifier</key>
  <string>L44W4W8ABC.com.mycompany.MyApp</string>
  <key>aps-environment</key>
  <string>development</string>
  <key>com.apple.developer.team-identifier</key>
  <string>L44W4W8ABC</string>

可能不需要這種添加權利的方法。 請參閱您問題下方的評論,以獲取其他選擇。 但是,由於其他原因,我正在添加其他權利,並且無法通過Xcode做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM