We're building a Unity game for a client that has provided us with an iOS framework. The framework is required to be added as an Embedded Binary. This is simple to do manually, however, we are using Jenkins to automatically make our builds.
Note: this is an example image I found on Google.
Is there a way to automate this through a script be it with XCode, Unity, or 3rd party tools?
Related
I need create some Windows app with Firebase, but I can't choose a programming environment for Windows app. Which ones support FireBase?
Firebase does not have SDKs that directly support building apps that can be deployed on Windows.
The closest I can think of:
The Firebase SDKs for C++ and Unity can deploy to Windows desktop, but that is explicitly only intended for development. So you can develop and test your mobile game on Windows.
There is some movement on adding Windows support to the FlutterFire binding library, but it seems very early going.
Outside of these: the REST APIs for Firebase are all platform agnostic, so can be called from anywhere. There are quite some third party libraries that wrap these REST APIs, so I recommend doing a search for your combination.
Also see:
Firebase for Unity3d Windows application
Is it possible to use any kind of database in Flutter Desktop
Flutter & Firebase
Flutter Fire
Flutter Fire is the official Firebase SDK for Flutter and has incredible documentation, helpful videos and tutorials. The integration is seamless since both tools are built by Google. The maintainer of FlutterFire has created FlutterFire_Desktop which I believe may be a solution for you once its fully built out.
Flutter
Flutter is a UI framework which uses the Dart language (also built by Google) to allow developers to build one app and deploy everywhere.
Dart can compile to x86_64; ARM64 and Javascript - Ideally you can write one codebase for Windows, Mac, IOS/Android and Web. Dart also has a built in package manager and open sourced community through Pub.Dev which may have more workarounds for you.
C++ SDK
As of the latest Firebase Summit , they have recently added more support for their C++ SDK although I'm not entirely sure how it would integrate or if it integrates into windows desktop applications at all.
Packaging my little react native app for Android so that it runs e.g. with Expo on an online App testing service like Appetize or Runthatapp is easy. Up to now I relied on online services to do the building for me, but that is no sustainable solution, that's why I want to do it on my own now.
I understand that for compiling my react native app for iOS I have to somehow run Xcode (on a virtual box). I am able use Android Studio to build my APK files using the GUI, but how do I do that automatically?
I am looking for a way how to automatize that process using Jenkins (either under Ubuntu or under Windows). How would I approach that? My architectural idea looks as follows:
Step 1. Jenkins pulls source code and additional artwork (i.e. logos) from GIT
Step 2. Building and packaging.
2.1 Jenkins initiates the Android Studio and starts building the .apk-file, ideally via command line.
2.2 Jenkins initiates Xcode with some fancy long command line, and out comes
a nice .ipa file.
Step 3. Jenkins takes both files and archives them
Step 4. Deployment
4.1 Jenkins automatically deploys to Google Play Store using their API
4.2 Jenkins automatically deploys to Apple App Store using their API
4.3 Jenkins automatically deploys it to the Amazon App Store.
I am struggling with step 2 and 4, but the priority is the automatic building (step 2). Any help is appreciated, even links to tutorials. What I am after is an explanation on who to steer Android Studio and Xcode by command line.
Resources
How to run apk file online?
What is the (file) format of iOS/iPhone apps?
Deploy to Google Play Store via API
Automatic app deployment to Amazon store
https://stackoverflow.com/questions/57107024/is-there-any-official-way-or-api-to-get-app-reviews-for-ios-apps
Deploy/Publish Android app made with React Native
Unable to build APK file on Jenkins (react native)
I'm making a simple Pong game on a Mac using Xamarin and Monogame, however I can`t find a way to export into a binary such as a .exe or a .app. Can it be done?
The answer is yes.
The procedure is pretty similar on both Android and iOS.
Android
Switch your project over to Release mode
If you are using any Google Play Services (maps and such), make sure to use your own keychain, which can be defined in the Project Options under Android Package Signing
Build the project
Right click and select Archive for Publishing
A new window will appear where you can sign and distribute your app
Upload to Google Play Store or any other relevant store
For iOS the steps are similar
Make sure you have created an App Name and provisioning profiles in the Apple developer center
Make sure Identifier of your app matches the registered one in the Info.plist of the app
Switch to AppStore or Ad-Hoc depending on the way you want to distribute your app
Build your project
Right click and select Show IPA on Build Server (Visual Studio) / in Xamarin.Studio on Mac you can select Archive for Publishing and get the IPA.
Upload the IPA to iTunesConnect or HockeyApp or whatever distribution method you are using
For more in depth documentation, please refer to Xamarin's official documentation for Android and for iOS.
Sorry for not quite understanding your question at the first time.
If you build the game on a Mac, I am not sure there is a way to export .app. However, I recommend you load your Xamarin project into Xamarin Studio or Visual Studio on Windows. Then you can get the iOS version and windows binary at the same time. However, for windows version you could only get .appx output, which is the winRT counterpart to the traditional desktop .exe.
Take Visual studio as an example,
If you want to export windows output, please follow steps below:
right click on your project's xamarin.Windows(UWP or Windows8.1) folder and select "store"
Select "No" for the prompt dialog about whether to upload to store
Follow the instructions till the end. Then get the .appx file under your project's AppPackages folder
And what's more, even if you just need to share with several people, HockeyApp is still a good option for you regarding the distribution trouble and version control trouble it can save for you. You can take a trial here.
Please let me know if this can help.
I have a C# library that I want to use in my Xamarin project to deploy to an iPad.
Lets suppose the C# library is stored as MyUtilities.dll.
For a regular Windows app, I'd add MyUtilities.dll to my project Resources and then have a
using MyUtilities;
statement in the class where I wanted to use classes from that library.
How do I accomplish this same thing using Xamarin in an iPad app?
You will need to rebuild your library from the source using the Xamarin.iOS compiler. After that you would reference the same way you do in a Windows app - by either including a Reference to the dll in your project, or by including the Library project in your solution and referencing the project.
I have a Monotouch iOS application that I'm writing in Visual Studio using Xamarin's new Visual-Studio plug-in.
I would like a way to execute my Unit tests from within Visual Studio (e.g. with the Resharper runner).
I don't much care which unit testing tool I used (they're currently written as nUnit tests).
I know Xamarin supports Touch.Unit which will allow me to run on the device or simulator, but this is too long of a cycle-time, I need it to run on my windows machine.
I tried to use NUnitLite, but this still has the problem of not being able to run on the windows machine.
I also attempted to use the Visual Studio Solution configurations, which should, theoretically allow me to choose a different build configuration in the drop-down to switch between windows (for my cross-platform core library + its tests) and Monotouch (for the IOS UI app, cross-platform library, and IOS tests), but in this, the project references didn't automatically switch to the other framework, or I just messed up how to properly setup a secondary build configuration.
Finally, using two different solution files and separate sets of project files is not ideal because one needs to switch and also keep the clone project's files in sync.
Any ideas on the best way to accomplish easy, fast, unit testing?
The way I've made this work in the past is:
Have all your core code in a regular .Net 4 library. This library
has no dependencies on iOS or Android.
Write tests against the core library in another .Net 4 project, using NUnit Lite syntax in your asserts. Use ReSharper to run them all you like.
If you wish, setup an iOS project to run the tests in a simulator - link-in all the files for the tests
On iOS or Android, you will need to link-in the files from the core project.
If you have any platform-specific code in your tests, you won't be able to run them with ReSharper.
If you want to see an example, we took this same approach with Xamarin's Field Service app.