Building a Unity project into iOS without Xcode - ios

I want to build my Unity project to the iOS platform.
When I click build to iOS I get prompted with this screen:
There says Run in Xcode as but I do not have a Mac, but correct me if I am wrong but you can not run Xcode on Windows.
So is there no way I can build my project without a Mac then?

You can’t, when you build for iOS, unity creates a project that you must open with XCode (in a Mac) and then build it to deploy it on a device or simulator.

You can use "vmware", there are good tutorials on youtube, but not sure it's legal.

Related

Not able to create IOS build from Xcode using Flutter code?

I am using Windows for Flutter app development and it is working fine for android ,I want to know how can I create IOS build from XCode now.? Does it required to do full flutter setup with Xcode on Mac or I can build it with Xcode only ? Apology for my terrible english.
To build an iOS project you have to install XCode on your MAC with flutter and dart Installations, and if you don't have MAC you can run your code from any browser from flutlab.io
You need XCode + Flutter installation on a Mac to create iOS build.
XCode alone will not work. You will have to clone your project into the Mac & then open the project in Xcode to create the build.
Xcode only works on Mac. And yes you have to do a full flutter setup with Xcode on Mac which is not so difficult, you will find many flutter setup with Xcode video in youtube.

What exactly does Flutter build iOS do? Is this really necessary?

I would like to fully understand this command and what happens behind the scenes. Here are a few pieces of information I've understood so far but somehow I cannot connect the dots:
When deploying an iOS we need to go through these steps:
build a flutter app in release mode, which will make an .app file/folder
archive & sign the .app file which will convert it into .ipa
send the signed .ipa to the appstore
flutter apps can have 3 modes: 1. debug 2. release 3. profile
running flutter build ios creates a build/ios folder, including the Release-iphoneos/Runner.app
Xcode creates its own .app in ~/Library/Developer/Xcode/DerivedData/Runner-...
Now, questions:
Is the build/ios/Release-iphoneos/Runner.app that Xcode converts into .ipa? I'm asking since I know that Xcode creates its own .app in ~/Library/Developer/Xcode/DerivedData, so I'm not sure if Xcode just copies build/ios/Release-iphoneos/Runner.app in here: ~/Library/Developer/Xcode/DerivedData/ or not
What happens if I don't run flutter build ios before? Will Xcode use only a debug mode of my app? If so, how come it removes the debug flag in the upper right corner?
When I clean my build folder in Xcode (shift+cmd+K) and then I archive the app and it will still build a new .app and then it converts it to .ipa. What mode was this .app created in? Was it a release app? If so, again, why is it necessary to run flutter build ios before and why not just archive it from the Xcode?
Thanks to everyone who tries to unleash this big mystery for me and for everyone else wondering.
The reason you should run a flutter build ios before archive is because archive uses the last build configuration from the results of running flutter build ios.

Developing Unity game on Windows for iOS devices

My unity application is developed for iOS devices, but for some reason at this moment I have only Windows PC.
I searched around and found similar information, but not clear for what I want.
My query is
I will do development of the game in Windows PC using C#.
Then will build and deploy to iOS device using MAC.
Is that possible? I like to make sure.
I have made several Unity3D projects for iOS using a Windows.
When installing Unity, don't forget to check "iOS deployment" and your Unity (on Windows) will be able to build an Xcode project.
Then, just transfer this Xcode project on a Mac with Xcode installed and you will be able to compile the project in order to be run on your iOS device.
Note : I just have to run chmod 777 MapFileParser.sh on the Mac folder containing the Xcode project before compiling with Xcode.
You can always use Unity Cloud to build you games. Their server will build it either from your own repo (git, svn, etc) or you can use their Collaborate feature by going into the unity editor -> services -> collaborate on.
Before getting to use Unity Cloud to build for iOS, you will need to generate your certificates just as you do when building using XCode. On the config page you can choose the version of unity you want the build to use, the version of xcode and if you want Unity to build your game on every push ( auto-build).
As far as I know when building for ios the ipa will have a ridiculous size. If you encounter this problem please refer to the following link: how to disable bitecode
Even though Unity allows us to use their system to build for any platform, in order to upload your *.ipa to app store you will need to do it through application loader.

Cordova iOS Build in Netbeans

I am building a cordova app using Netbeans 8.0. My problem is that although it builds on Xcode, I am getting the following error in Netbeans.
update-ios:
cordova prepare ios
build-ios-xcodebuild:
xcodebuild: error: SDK "iphoneos6.0" cannot be located.
/Users/abc123/nbproject/build.xml:178: exec returned: 64
BUILD FAILED (total time: 2 minutes 0 seconds)
Xcode is at version 5.1. I assume I need to add the SDK path to a file somewhere, but I don't know where that is nor where to put it.
I can still use Xcode if I have to but it is quite cumbersome when the Android version still uses Netbeans. The provisioning profile is set correctly.
In netbeans goto configure cordova. You can find a link by clicking on the build device icon. from the popup select mobile platform setup. put the correct path there.
I was in the same situation. Using Netbeans 8.0.2, Xcode 6.1.1 e IOS Simulator 8.1 (550.3)
The tip, in the commentaries, from tl8, is great. Go to the Project Files Tab (Cmd+2 or on the menu bar, Windows -> Files).
On the files:
YourProject/nbproject/ios.properties
YourProject/nbproject/ios_1.properties
Inside those files you can make the changes. The first concerns to the simulator version. The second is about the ios version on the device.

How to install cordova(phonegap) ios app to device via cli and not via xcode

I am trying to create a simple project with last phonegap version:
$ phonegap create my-project
$ phonegap build ios
$ phonegap install ios
All works perfectly and I see emulator with my simple application.
But I can't find documentation on how to run my application on device(iphone, for example) and not on a simulator.
All documentation by cordova / phonegap based on examples with cordova's template for xcode.
But last cordova's version don't have template for xcode and all that I need - cli, if I understand correctly?
I already registered as IOS developer and I have a valid iPhone development certificate.
When I connect my device - I can see it in xcode and I can run native application on my device.
But only via xcode.
I will be grateful to any advice.
If the cordova app builds and runs on the simulator, try running cordova run ios --device
This worked for me, when before it was only hitting the simulator.
Alternatively, if that STILL doesn't work for you, when you run codova build ios, to just build the app, you could use itunes to sync the generated .app file in <project_folder>/platforms/ios/build/device/AppName.app
There is an Apple CLI tool canned xcodebuild, as well as this wrapper around it by Facebook. I'd suggest trying out either that or look at the build-in xcodebuild shipped with xcode.
Hopefully one of them will work.
https://github.com/facebook/xctool
https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/xcodebuild.1.html
If you use Cordova CLI, you should be able to do this:
cordova run ios

Resources