I am trying to build my Cordova project for an iOS. I have borrowed a mac and an iphone in order to do this; meaning I am very new to everything apple-related.
From what I understand: in order to build anything for iOS, I need some sort of apple developer-account. (I believe the mac I am using has one, not quite sure.)
When I try to run the command: cordova run ios I get the following error:
Check dependencies
Code Signing Error: No profiles for 'io.cordova.hellocordova' were found: Xcode couldn't find any iOS App Development provisioning profiles matching 'io.cordova.hellocordova'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild.
Code Signing Error: Code signing is required for product type 'Application' in SDK 'iOS 11.2'
I don't know what any of the above means, or how to solve it. I believe I have to use xcode to somehow automatically created a build.json file (not sure), but I don't know how to open my cordova project in xcode.
I have been using Sublime to edit my cordova project files, and the terminal to use the cordova cli. I am running xcode 9.2
From what I understand: in order to build anything for iOS, I need some sort of apple developer-account. (I believe the mac I am using has one, not quite sure.)
If that is true, then you can try the following:
cordova build ios
open platforms/ios/<my-app-name>.xcworkspace
This will open the app in Xcode. Click on the icon (left hand side, above the directory structure view) "General" and check "Automatically manage signing". Try to run the app in Xcode.
Check this website for reference (and a picture of where to click in Xcode): http://cordova.apache.org/docs/en/7.x/guide/platforms/ios/index.html
As mentioned by #Dev_Tandel, you need to have a apple dev acct to run your app in a device. Refer link to get more info: https://developer.apple.com/support/certificates/
This has to be one of the simplest fixes. There must be something I'm just not seeing/getting.
I am in the process of converting my app to 64-bit so that I can deploy it to the app store. I got the warnings in my project and updated them like Xcode asks. However, I don't know how to update my project settings to support iOS 5.1.1. I just can't find that area.
I presume this is the reason why I cannot set my Architectures to “Standard Architectures (including 64-bit).” Instead, I only have the option of "Standard architectures (armv7, arm64) - $(ARCH_STANDARD)"
How do I resolve this?
Select your Project in the Project Navigator,
Select the Info tab, and then
Set the iOS Deployment Target to the version of iOS you want to target (in your case 5.1).
Im pretty sure that you can't simultaneously support 64-bit and pre-ios6...
I have developed an iOS app in Titanium Studio (SDK 2.1.3.GA). Now, I want to publish on the Apple App store.
I tried, but it gave me the error add armv6. I added it in the file info.plist, but still I am getting that error.
Could any one give me step by step guide to upload an iOS app from Titanium to the Apple App store?
Also, how can I set the app icon for both iPhone and iPad in Titanium?
Yes I had the same problem I did the following step after banging my head for 5 hours.
Start the project in simulator it will create the build folder within your project/
Go to the build folder->iphone, find the xcode project.
Open up this project in xcode. Select the main project and goto info tab.
Set the minimum ios development target to 5.0 (you can also select 4.3 but don't select 4)
Go to the build Settings tab. Remove all the architectures.
Now add two targets one by one. 1. armv6 2. armv7
Repeat this step in Valid architectures in build settings and select appropriate distribution provisioning profile.
Now clean the project. build archive and enjoy :)
Here is the official doc of Titanium, very clear for the distribution steps.
Distribution iOS apps
I've opened an iOS project - with Xcode 4.4.1 - that I hadn't opened for 2 months (ie with Xcode 4.3). First, Xcode was crashing constantly right after displaying the project navigator saying something like "Failed to associate working tree".
I tried to fix it by removing xcuserdata files and the project.xcworkspace directory as well.
Now, Xcode opens without crashing but in the scheme view, it is shown as a Mac OS X project whereas both the project and the target are correctly set to a "Latest iOS" base SDK.
How can I fix that without having to recreate a project and copy all my source files?
EDIT: i'm using Git with a GitHub remote.
make a new scheme for ios by clicking on the current scheme then "new scheme"
Roll back using version control. If you post which version control system you are using, somebody will be able to give you the specific command to use.
I had a similar problem with all my Xcode projects. Every iOS project got turned into an OS X project without me changing any settings. A reinstallation of Xcode fixed it for me.
Just set your Root SDK to iOS in your target's Build Settings
SDKROOT = iphoneos
It's been a while since I've had to adjust project build settings. After upgrading to a recent SDK I'm having trouble building my ad hoc distribution configuration.
Build generates this warning and error:
warning: iPhone apps should include an armv6 architecture (current
ARCHS = "armv7")
iPhone/iPod Touch: application executable is missing a required
architecture. At least one of the following architecture(s) must be
present: armv6 (-19033)
However in my project I thought I had things set correctly:
Architectures is: Standard (armv6 armv7)
Base SDK: Latest iOS (currently set to iOS 4.2)
Valid Architectures: armv6 armv7
I have cleaned all targets.
I appreciate any tips.
If using Xcode 4.2 or higher, try the following:
Click your Project name (in the left column), followed by the Target:
Click the 'Build Settings' tab (in the right column):
Click the 'Release' or 'Distribution' row under 'Architectures', and choose 'Other...':
Double click the highlighted row named '$(ARCHS_STANDARD_32_BIT)' in the popover that appears, and replace it by typing 'armv6'. Then add a new row with the plus button in the bottom left of the popover, and type 'armv7', then click Done:
Update: you should add armv7s to target the iPhone 5 as well. (And drop armv6 if building with Xcode 4.5 or higher, which no longer supports armv6.)
That's it. You should now be able to build/archive without generating errors.
If it still doesn't work, see this answer from justinxreese, which suggests adding entries for armv6 and armv7 under "Required Device Capabilities" in your info.plist file.
If you uncheck "Build Active Architecture Only", then it will build all the valid architectures.
Update: This is no longer applicable as of Xcode 4 - follow Nick's instructions for Xcode 4 and later.
I had this problem even after following the accepted answer and found the following to work:
In your Info.plist, add an entry for Required Device Capabilities. This should be an array and will have two entries.
Item 0 : armv6
Item 1 : armv7
It will look like this:
In addition to Nick's answer about Xcode 4.2, you may also need to review your info.plist file. It seems as if new projects started in Xcode 4.2 by default specify 'armv7' in the 'Required Device Capabilities'. You'll need to remove this if wanting to support devices that run armv6 (e.g. the iPhone 3G).
Delete armv7 from the 'Required device capabilities' in yourProjectName-Info.plist
An ios 6 update
Changes in Xcode 4.5.x for ios 6
Xcode 4.5.x (and later) does not support generating armv6 binaries.
Now includes iPhone 5/armv7s support.
The minimum supported deployment target with Xcode 4.5.x or later is iOS 4.3.
I had this problem too. I just set my deployment target to 4.3 and left only armv7 architecture and it worked. At point almost everyone has 5, so 4.3 is fine.
for me it not work with every answer. but I try TARGETS > Architectures > Debug and add a new row with the plus button, and type 'armv6'(with out '), then click Done.
and finally CMD+B and then right click at PrjectName.app(in Products folder) > Open in Finder > Compress "PROJECT_NAME.APP" (in Debug-iphoneos) > Upload to AppStore
it's my screen setting.
if you have include project please config it all.
Hope your help.
After trying a mixture of these answers, I finally stumbled across making it work. Im so pissed off at Apple right now. Just another hour they made me waste. Here is my config.
I tried all the answers above ,none resolved my question. So I create a new project and diff the build settings one by one. Only "Alternate Permissions Files" is different.
The project build failed has a value armv7. Delete it then clean->build->archive . Succeed!
Hope can solve you question
Wow, I update/submit apps about every 6 months. Every time I do this I have to learn the "new" way to do it...
Same problems as described above when running iOS 5.1, and Xcode 4.3.2
Thanks for the posts! I spent a while updating all of the project settings to armv6, armv7, but no joy. When I set "build active architecture only" to No I got a build error about putting both objects in the same directory.
Fortunately, I noticed you guys were modifying the target build settings instead. This is what finally worked (armv6, armv7, and setting "build active architecture only" to No under the Target build Settings). As a disclaimer, I had already set all of the architectures to armv6, armv7 in the project settings too.
Anyway, thanks for the help,
Brent
I had to be sure to change these settings in both the Target and Project settings on xCode 4.3.2 after doing that and setting it to build for both armv6 and armv7 everywhere I was able to submit my app.
For safe measure I also exited xCode between making the changes and doing a clean, build, archive cycle.
Quite a painful problem for me too. Just spent about an hour trying to build and re-build - no joy. In the end I had to do this:
Upgrade the base SDK to the latest ( in my case iOS 5 )
Restart xCode
Clean & Build
It worked!
I guess it's a bunch of jargon about arm6 , arm7 as it looked like my project was valid for both, at least the settings seemed to say so ) , my guess is this is a cynical way to bamboozle us with the technicalities, which we don't understand, so we just take the easy option and target the latest iOS ( good for Apple with more people being up-to-date ) ....
Here is Apple's documentation:
Technical Q&A QA1760
It says there are two things that you must get right:
Add armv6 to the Architecture build settings
Set Build Active Architecture Only to No.
If this still doesn't help you, double check that you are really changing the architecture build settings for the right build configuration – I wasted half an hour fiddling with the wrong one and wondering why it didn't work...
Select Edit Scheme... in the Product menu, click the "Archive" scheme in the left list and check the Build Configuration. Change the value if it was not what you expected.
Note; I had to perform these steps for both my base project, and the embedded PhoneGap .xcodeproj file in my application.
Yes, I embed PhoneGap; they update far to frequently, and I've got less than two months to know that a feature is depreciated.
Try changing your deployment target to something higher than an armv6 processor. The settings for xCode are referencing the operating system level, for instance: iOS version#{3.1, 3.2, 4.0, 4.1, 4.2, 4.3, 5.0, 5.1}
(i)You can set this in the build settings tab or the summary tab. Start at the top left of the window in the Project Navigator, with all the files listed in it. Click the top-most one which has a blue icon.
(ii)If you are planning on using the programmable shader line circuitry, which is accessed and controlled through openGL ES 2.0 API, then you should set your "Deployment Version" to about 4.3, which I believe is only available on devices such as the 3GS or newer. xCode is reporting that iOS 4.2.5 or higher is needed run armv7 code. And once again, this processor, I believe, started with the 3GS.* iOS 4.3 seems to be the choice for me, for now.
http://theiphonewiki.com/wiki/index.php?title=Armv7
http://en.wikipedia.org/wiki/List_of_iOS_devices
If xCode keep complaining about armv7, make sure you disconnect any connect device (especially iPhone 5!!) and try again. Took me hours to find out that little piece of information.
Using Xcode 4.2 on Snow Leopard, I used the following settings to build an app that worked on both armv6 (Iphone 3G and lower) AND armv7 (everything newer than 3G including 3GS).
architectures: armv6 and armv7 (removed $(ARCHS_STANDARD_32_BIT))
build active architecture only: no required device capabilities:
armv6
do not put armv7 in required device capabilities if you want the app to run on 3G and lower as well.