Our iOS developer has developed a game in Unity3D. How do we export it for Android? - unity3d

Our iOS developer has developed a game in Unity3D. How do we export it for Android? I did a quick check on the internet and it says there "one click export for Android".
Is this really the case? Are there ways it might have been developed that will make it not as easy to do?

If you are asking about "one click export for Android" then yes it is a one click export for Android
Build Settings > Android > Switch platform > Build
But for the question will there be any additional work necessary. Well that depends if you have used any (self made or third party) plugins in your application. If not then no additional work is necessary.
If yes, then there are 3 possibilities:
All the (third party) plugins are only iOS specific.
Some of them have both Android and iOS component in them.
You have written your own plugins.
Then, (as you said that you have developed an iOS only application) it is obvious that all the code you wrote using those plugins is also iOS specific. In that case it is recommended that you enclose all that code in Unity's Platform Dependent Compilation checks (for iOS it is UNITY_IOS for android it is UNITY_ANDROID).
This is recommended because initially you should first check if your application runs perfectly on android devices with out any 'plugins' nightmare. Once sure, then you can go ahead and implement the Android side of all those plugins.
These checks only ensure that the piece of code written inside these are executes only on the respected platforms. Meaning, enclosing all iOS specific code in #if UNITY_IOS will not disturb you iOS build but only prevent that code from running on any platform other than iOS.
Finally, After that you are good to go and follow that "one click export for Android" method.

Related

Does Flutter Support iOS Features?

I am starting to work on one big project which includes Sirikit, Game Center, Fingerprint, health kit and home kit etc.
So my doubt is can I implement those features & other features which are provided by ios using the flutter..?
Flutter can't generate bitcode. So, it can't integrate features like Siri, interactive notifications, watchOS, tvOS, Today and other modern extensions.
It compiles like it was before 2015. Before iOS extensions. With same limitations.
Yes and no - you could definitely use some and probably all of those, but you'll have to write Platform Channels. I use fingerprint for example in my app.
There may exist plugins for some of the functionality - see the flutter packages page.

GameAnalytics, validating in app purchases on Unity

I'm setting up for the first time GameAnalytics in my Unity3D project.
I'm try to figure out if there is a way to validate in app purchases for both android and iOS from it.
In the docs I found http://www.gameanalytics.com/docs/ga-data#business-event. I understood that you need to work with native sdks to get this feature, am I right?
Could it be an option to configure from the dashboard an android and an iOS game and then changing the keys in unity with precompilator instructions? (like #if UNITY_ANDROID)?
I am an SDK developer # GameAnalytics.
Yes.
There is a way to make the GA servers validate Android and iOS IAP purchases in business events. From Unity.
Short story
You need to send the receipt in the business event after the purchase.
You can read our complete Unity tech guide in the Github Repository.
Regarding IAP validation you should read this section.
https://github.com/GameAnalytics/GA-SDK-UNITY/wiki/Business%20Event
About the keys
You should create a game for Android and iOS in our tool at go.gameanalytics.com
Inside the Unity Editor you can add platforms (Android / iOS) and then add specific keys to each.
You can read more about the in-editor settings in the wiki docs as well. Including how to login and select games directly in the editor.
Let me know if you have any issues. You could also file a support case with our friendly support staff.
When you install the Game Analytics unity package, you are essentially installing the native libraries for each platform (Android, iOS, ...) located in the Plugins folder.
If you want to target multiple platforms in your code with an API like Game Analytics, I recommend you use the preprocessor tags as you mentioned since the functions from Game Analytics are platform specific.

Can an android app be installed/converted to run on an iPhone?

I have an android project that targets Android 2.2 (developing in Eclipse). Exporting the android project to the Droid Incredible works perfectly. Is it possible to export the project to a file suitable for installing on an iphone? I know that most iPhone apps are developed using xCode, but I'm not sure if xCode packages into a .apk or other file format that's equivalent.
Thanks in advance.
Only if you write or port your own complete Dalvik VM (in Objective C or Javascript), plus developing the runtime support needed for any and all API calls that your app uses, and bundling all that with your app, as that would be the only way to run a regular Android project on an iPhone.
A non-trivial amount of work.
Completely rewriting the app in Objective C and Cocoa Touch would be magnitudes easier.
Not even remotely possible. Android and iOS are completely different environments. There are a few frameworks for developing applications that'll run on either, but the results often end up looking kind of weird on both platforms.
You cannot export an Android application and run it in an iPhone because the hardware/software stacks/APIs/etc. are different.
However, if you build an application using for instance PhoneGap (a HTML5 based application framework), it is possible to deploy it on different mobile platforms.
If you feel curious about multi-platform mobile frameworks (Android/iPhone) you may find this thread interesting.

Dashcode project opening in xcode problem

If we make our Dashcode application open in Xcode then are we making a native app....
Dashcode is an IDE, a tool or set of tools for developing Mac Widgets, web based iPxxx applications and Webkit based Web applications. In Dashcode JavaScript, CSS and HTML are used to develop these applications.
XCode is an IDE for developing native Mac applications and iPxxx applications usually but not exclusively with Objective-c and an interface builder for the graphical elements.
A Dashcode project is in reality a set of file in a folder, but the Mac Finder makes it look like a bundle. If you right click the project and click on open project you will just see all the files in the project.
Opening the Dashcode project in XCode doesn't do anything, i just tried it, but even if you did XCode will not perform an magical transformation and turn JS/CSS/HTML into Objective-C and therefore it will not turn it into what i think you mean by native app. To do that you will need to learn Objexctive-C cocoa and the XCode programming tools and interface.
In answer to oyur added comment not it will not change any code.
If I am not mistaken a little more input towards this may be nice. If you use PhoneGap in Xcode then you can make your web app a native app with very little effort. I found that porting my skills from mobile web development to Xcode was something I didn't have the time to put out upfront so to get my app out there right away, PhoneGap was my answer.
I hope this helps, but do know that it is not going to be as efficient of an app built this way.
I think you want to know: can we treat a DashCode app as native app, and run on simulator and/or real iOS devices.
From my point of view, the answer is: YES
I think what you asked can be answered using here.

How do you setup Eclipse to work on iPhone development (instead of Xcode)?

Although I've been getting more and more familiar with Xcode while developing for the iPhone, there are times I just wished I had a better IDE, something like Eclipse.
So I was wondering does anyone know how to migrate iPhone projects to Eclipse, and if it's worth it?
XCode largely uses standard Unix tools for a lot of its work. iPhone applications are compiled using GCC 4.0, it uses gdb for debugging, so it should be possible to set up Eclipse to at least compile applications.
If you look in the Build section of the Project Info pane (select the project, hit the Info button in XCode, choose the Build tab from the top) you can see many of the options.
I'm not sure what is required to copy a file to the simulator and attach a debugger to do a test run, it might not be worthwhile to jump through all the hoops and Apple may require an XCode generated build to accept an app into the App Store.
It may be the case that for regular code editing you can work reasonably well in Eclipse, then switch to XCode for interactive debugging.
Most of the existing Eclipse plugins seem to be oriented towards developer iPhone-aware web applications, so I'm not sure if you'll get any help there.
As far as I know you cant use Eclipse or any other IDE to develop for iPhone.
Apple only supports XCode and this wont change in the future. So I think you have to get used to XCode.
Late in the game, but you might want to kick the tires with JetBrains's AppCode, eventually a full feature drop-in replacement for xCode ... and very similar to IntelliJ (GUI, work flows, etc...). Still Early Adopter as of now, it performs some tasks rather well. I still use xCode for configuring the build options and targeting the device, but that will eventually be taken care of.
regards
There's cross compiling that give you ability to develop IPhone apps on eclipse
http://www.youtube.com/watch?v=TG-NIt2O5J8
There are no plugins that support Apple IOS application development in Eclipse but on windows, you can develop using Adobe CS5. This is one of the powerful tool from Adobe in which you can develop .ipa applications on windows but you need some stuff to be ready before you start developing IOS applications using Adobe CS5