Here are the issues I encountered and fixed:
Code signing: downloaded the
xcode8.js
hook and added the following tobuild.json
, per http://www.dpogue.ca/articles/cordova-xcode8.html:"ios": { "debug": { "developmentTeam": "VZ4B5XSP9U" }, "release": { "developmentTeam": "VZ4B5XSP9U", "codeSignIdentity": "iPhone Developer" } }
On my Mac, deleted the
~/.taco_home/node_modules/taco-remote-lib/2.2.1
and.../2.2.0
folders, per https://github.com/Microsoft/remotebuild/issues/5.On my Mac, tried uninstalling and reinstalling
remotebuild
, and different versions ofnode
andnpm
(0.12.9 and 4.6, and respectivenpm
versions).In Visual Studio, tried changing the targeted Cordova version: 6.3.1, 6.2, 6.1.1, and back to 5.4.1.
No matter what I do though, the build gets stuck either on extracted - Extracted app contents from uploaded build request
, or building - Updating platform
forever.
Earlier, when I tried opening the Xcode project in Xcode on the Mac, it successfully built and deployed the app to the device. I was then facing issues using WebRTC (using cordova-plugin-iosrtc
) and it was giving me privacy violation exceptions. I tried adding the cordova-custom-config
plugin and appropriate Cocoa keys (NSCameraUsageDescription
and NSMicrophoneUsageDescription
) per App crashes with __CRASHING_DUE_TO_PRIVACY_VIOLATION__ when trying to access contacts, and then it stopped working altogether.
Can anyone please advise what are the latest versions of all of the components I should be using to make it work again? Some sources advise to use Node 0.12.9 on the Mac, others 0.12.7; most people claim that with Cordova >= 5.3.3, any Node version should suffice, however using Node 4.6 didn't work either.
Thanks in advance for any help!
Update: After performing the brew update etc.
as suggested by Jordan, the remote deploy works, but the build sets "Main interface" setting under project's General tab to "NSMainNibFile~ipad", which causes the app to crash on launch, until I open the project in Xcode and clear that field, then an incremental build creates a functioning app.