2

I am currently developing an app for iOS, and I am distributing the app to my phone via a repo I created for Cydia. The app downloads and runs fine, but the login process is not working. When I run the app in the Simulator the login process works flawlessly. The login process was also working when I distributed the app via Xcode and had the app inside the sandbox. So installing my app in /Applications is obviously affecting something with the KeyChain aspect of the app.

Has anyone here successfully distributed an app via Cydia that used KeyChain Services in the Security.framework of the iOS SDK?

I found this SO thread but there really isn't an explanation for how he got Keychain Services working in his app.

Community
  • 1
  • 1
ipatch
  • 3,933
  • 8
  • 60
  • 99
  • I think I am going to have to use some sort encryption other than using keychain api because this seems to be a dead end :-/ – ipatch Aug 13 '12 at 21:55

1 Answers1

0

To use the keychain feature, your app must be both codesigned and have entitlements enabled in the Xcode project.

To codesign it, install ldid from Cydia and run ldid -S applocation.

To enable entitlements, select your project, scroll down to bottom in Summary and click on "Entilements" checkbox, then add the Keychain Access Group if it wasn't enabled by default.

For more information, read Saurik's blog post.

Chris
  • 1,416
  • 18
  • 29
  • i've read the saurik's blog post, and i also enabled entitlements with the checkbox. – ipatch Aug 16 '12 at 02:23
  • In the *App.entitlements* file I have a key *keychain-access-groups* type *Array* value *(1 item)* then below that I have Item 0, String *$(AppIdentifierPrefix)com.chrisrjones.KegCop* – ipatch Aug 16 '12 at 02:27
  • If that's not the problem, I'm not sure. Sorry. You might try asking in #iphonedev or #theos on irc.saurik.com. There are a lot of people there who are much smarter than I am. – Chris Aug 16 '12 at 06:58