How to deploy a Mono console app on Mac? - macos

I wrote a C# console app using a new Console Project in Xamarin Studio. Now, how do I deploy it without requiring other users to manually install Mono on their machines? Ideally, I'd like to just distribute a binary executable (not using the Mac App Store).

You should use the mkbundle tool to include all dependencies within your binary. Scroll down to "Bundles" in the below link.
http://www.mono-project.com/Guide:Running_Mono_Applications

Related

How to create a MacOS Console App using VS on Windows

.NET Core 3.1 Visual Studio 2019
I have created an iOS Xamarin mobile app, using Visual Studio running on Windows. All works fine, even debugging on an iPhone connected to the Mac on my network.
I now need a very simple Console App for the actual Mac (macOS computer). I have already written the Windows version of the Console App.
I cannot work out how to compile the Console App for macOS. Is it possible? Any help appreciated.
If it is not using Xamarin.Mac APIs, then you can "just" use the console app assembl(ies) and run it via dotnet
Or publish it via dotnet as a self-contained executable
dotnet publish --runtime osx.10.11-x64
Or a runtime-dependent cross-platform binary
dotnet publish
re: https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-publish
But if your app is using Xamarin.Mac APIs, then review my SO answer here:
re: Compile OSX app on Windows with Xamarin

How to sign and notarize an electron application build using visual studio code for macOS for outside mac app store?

I've created an electron application using visual studio code to publish outside mac app store. Before the macOS 10.14.4 release, my application was build and signed successfully using electron-osx-sign module which uses electron-forge internally. Now after macOS update I'm getting error message while building the application as - "rejected source = Unnotarized Developer ID".
I'm finding solutions available for application build in Xcode all over the internet but there is no specific solution for applications build in visual studio code using javascript.
The command I'm using to create a build for my macOS :
"electron-packager . appName --overwrite --platform=darwin --arch=x64 --electron-verison=5.0.1 -icon=icon.icns --osx-sign"
Kindly provide with your inputs for any possible solution.
TL;DR
For me, changing the password to app specific password resolved this error.
Explanation
App Store Connect now requires two-factor authentication (2FA) on all accounts, so you must create an app-specific password for Notarisations tools also.
How to create app-specific password: https://support.apple.com/en-us/HT204397)
Why you need app-specific password: https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution/customizing_the_notarization_workflow?language=objc#3087734
(By the way, the “Unnotarized Developer ID” warning will still be showing because electron process checks the staple before notarizing, but then it will continue and the build will complete)

Automatically building and deploying React Native app using Jenkins?

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)

React Native newbie

I want to build a game with React Native. I am doing my testing locally on a personal Android device using the Expo app but ideally would love for the app to be cross platform. I do want to release it to a public store or have it be available for folks to play in some format.
Is it OK if I am using Visual Studio Code (on a Windows machine) to build my app, using node.js command line to run expo commands and testing with live reloading on my Expo app? Do I need to have a Mac + XCode if I want to edit iOS code?
What is the typical development process/toolset used?
React Native IS cross-platform, building the apps for production on different platforms, however, requires a different procedure. What makes it cross platform is that you write the source codes including all of the components (Well most of them) one time, and it automatically generates the native codes for Android and IOS.
There's no typical toolset for writing code, you can use any code editor you prefer (I use Sublime for example), but you should have the needed requirements listed in the getting started page in the official official docs including node.js.
Expo helps in testing the app on both android and ios without the need of a Mac (it has some other cool features too!). So if you want to release to apple store, you'll definitely need a mac (or a virtual machine running MacOS like VMWare)
In order to generate the release apk for android: Android Release APK
and for IOS: IOS

Compile OSX app on Windows with Xamarin

I have a Xamarin Mac app I've been handed to make some changes. I've got everything working correctly as far as Windows Visual Studio Xamarin connecting to Mac Xamarin -- the Mac ssh agent works and whatnot.
However, how do I compile the app? When I build it on Windows, it generates an .exe file. Is something supposed to be generated on the Mac side, too? Or do I take that .exe file and somehow package it into an OSX app?
I was trying to stay in my Windows environment to do the coding and building as much as possible.
Thank you.
You will need to compile/package/debug it on macOS.
The build process is performed locally on Windows, generating IL assemblies that cannot be used for running or debugging apps, and it doesn't create application bundles.
re: https://developer.xamarin.com/releases/vs/xamarin.vs_4/xamarin.vs_4.2/#Xamarin.Mac_minimum_support.
macOS Apps
Mac apps can be opened and compiled in Visual Studio to check for errors, however to debug or create a working executable the project must currently be built on a Mac. This limited support for Mac projects allows for easier code sharing in Visual Studio between iOS, Android, Windows, and Mac apps.
re: https://developer.xamarin.com/guides/cross-platform/windows/visual-studio/#macOS_Apps

Resources