8
votes

We just started creating cross platform mobile apps using "Visual Studio Tools for Apache Cordova".

I followed the procedures described in Install Tools to Build for iOS and To run your app on an iOS device. Everything works nicely, the app gets deployed on my USB attached iPhone and runs as expected.

I then tried to upload the app to iTunes, to provide the app via TestFlight to testers and to generally see how app-submitting works:

  1. Build the iOS app as "Release" in VS: it builds and deploys to the iPhone nicely
  2. On the Mac: Start Application Loader, click on "Deliver your App" and navigate to "...remote-builds/builds/"xxx-buildnmb"/cordovaApp/plattforms/iOS/build/device/APPNAME.ipa"
  3. Several checks run OK ("verifying assets, etc.), but it then stops with the error

    ERROR ITMS-90161: "Invalid Provisioning Profile. The provisioning profile included in the bundle xxx.yyyyyy.zzzz [Payload/xxx.yyyyyy.zzzz.app] is invalid. [Missing code-signing certificate.] For more information, visit the iOS Developer Portal."

  4. I then discovered the Xcode Project in ".taco_home/remote-builds/taco-remote/builds/<build-number>​/cordovaApp/platform‌​s/ios/" and used Xcode to define the code signing identities in "Build Settings" and the Team information in "General", created the archive via Product-->Archive and submitted it in the Organizer - Archives. And voila it worked!

My questions:

  1. Do I have to use Xcode to submit?
  2. If not, what might I be missing in a) regard to building and signing apps with vs-mda-remote, and b) submitting it with Application Loader?
  3. What are Microsoft's plans in regard to providing access the build settings from within Visual Studio (similar to the ones in Xcode)?

Thanks a lot for any pointers in the right direction.

Thomas

1
I am getting this too, from the documentation provided by MS this should all be handled by the build, then you use Application Loader to upload your ipa file located in the bin on your windows machine - msdn.microsoft.com/en-us/library/dn771554.aspx - this doesn't work as you describe - MS need to update the guidanceAnthony Johnston
btw Step 4 helped me get my app up to the store - you should create an answer with this in and accept it. In the meantime thanks X)Anthony Johnston
This really sucks, but that's the only thing that works. @TOS please correct the path in Step 4, it's actually in your user folder at: .taco_home/remote-builds/taco-remote/builds/<builder-number>/cordovaApp/platforms/iosGyum Fox

1 Answers

2
votes

You need to use distribution provisioning profile to sign the package and apps are published to the App Store by using the iTunes Connect website along with the Xcode Archive Tool, which is included with the iOS SDK.