Xamarin Native Option? Whaaat?
-
After writing my book, Programming Windows 10 Via UWP (all chapters are here on CP -- Programming Windows 10 Desktop: UWP Focus (15 of 15)[^] ) I thought it might be nice to write a book on Xamarin since we __should__ be able to leverage the XAML knowledge we gained in order to build cross-platform apps. You guessed it: It ain't that easy. It isn't even very clear. Visual Studio Cross-Platform Project Template So if you are using Visual Studio 2017 and you start up the Xamarin Cross-Platform project template you will see the following dialog pop up to help you choose how your project will be created: http://raddev.us/images/cp/xamNativeOption.png[^] If you choose that option, Visual Studio requires you to create the UI for each of your platforms separately. So, basically that option means that all you are doing is managing your three separate projects (iOS, Android, UWP) in Visual Studio. Yes, you gain a bit of benefit since you can switch between each, but there's no re-use on the UI as you would hope. ?The Benefit? The benefit is that Microsoft then owns your code because it is wrapped up in Visual Studio. :~ Note: The sarcasm font was used on that previous sentence. :) I only tried the Native option because I found that building the "common" XAML wasn't working when I chose the Xamarin.Forms project and I was testing it out. The Marketing Hype Continues Microsoft rules all platforms with Visual Studio!!!! :rolleyes: Not so much, yet.
-
After writing my book, Programming Windows 10 Via UWP (all chapters are here on CP -- Programming Windows 10 Desktop: UWP Focus (15 of 15)[^] ) I thought it might be nice to write a book on Xamarin since we __should__ be able to leverage the XAML knowledge we gained in order to build cross-platform apps. You guessed it: It ain't that easy. It isn't even very clear. Visual Studio Cross-Platform Project Template So if you are using Visual Studio 2017 and you start up the Xamarin Cross-Platform project template you will see the following dialog pop up to help you choose how your project will be created: http://raddev.us/images/cp/xamNativeOption.png[^] If you choose that option, Visual Studio requires you to create the UI for each of your platforms separately. So, basically that option means that all you are doing is managing your three separate projects (iOS, Android, UWP) in Visual Studio. Yes, you gain a bit of benefit since you can switch between each, but there's no re-use on the UI as you would hope. ?The Benefit? The benefit is that Microsoft then owns your code because it is wrapped up in Visual Studio. :~ Note: The sarcasm font was used on that previous sentence. :) I only tried the Native option because I found that building the "common" XAML wasn't working when I chose the Xamarin.Forms project and I was testing it out. The Marketing Hype Continues Microsoft rules all platforms with Visual Studio!!!! :rolleyes: Not so much, yet.
I really must write a tutorial on how to do start off with Xamarin Forms. It's not that difficult.
This space for rent
-
I really must write a tutorial on how to do start off with Xamarin Forms. It's not that difficult.
This space for rent
Hmm....well, you're right it's not that difficult. But, it ain't that easy either. :-D Here's what I mean. 1. My Android emulator didn't want to run. That meant I couldn't run the Android version easily. Well, I'm a native Android dev so I knew why it didn't want to run. I am running VSTudio 2017 on a VM and you have to run an "special" version of the Android emulator (Is it possible to run Android Device Emulator (via Android Studio 2) on VMWare? - Stack Overflow - I originally asked this and solved it[^]) to get it to run on a VM. It's a hack!! :) Also, first time start, I have found android emulator has set the files to read-only and the Emulator hangs. I go to location of the emulator image and right-click and change all files to not read-only and then the emulator will start. Much craziness. 2. running the iOS app Even more difficult. I had a difficult time connecting to my iMac and getting it to deploy to my emulator. And if someone doesn't have a Mac, they are out of luck. This ain't no panacea, this here VSTudio. :) 3. Yes, you are correct, running the XAML UWP version is very easy. But I want the WORLD!! :)
-
Hmm....well, you're right it's not that difficult. But, it ain't that easy either. :-D Here's what I mean. 1. My Android emulator didn't want to run. That meant I couldn't run the Android version easily. Well, I'm a native Android dev so I knew why it didn't want to run. I am running VSTudio 2017 on a VM and you have to run an "special" version of the Android emulator (Is it possible to run Android Device Emulator (via Android Studio 2) on VMWare? - Stack Overflow - I originally asked this and solved it[^]) to get it to run on a VM. It's a hack!! :) Also, first time start, I have found android emulator has set the files to read-only and the Emulator hangs. I go to location of the emulator image and right-click and change all files to not read-only and then the emulator will start. Much craziness. 2. running the iOS app Even more difficult. I had a difficult time connecting to my iMac and getting it to deploy to my emulator. And if someone doesn't have a Mac, they are out of luck. This ain't no panacea, this here VSTudio. :) 3. Yes, you are correct, running the XAML UWP version is very easy. But I want the WORLD!! :)
if someone doesn't have a Mac, they are out of luck
Don't go complaining to Microsoft about that. My understanding is that's a restriction imposed by Apple. iOS apps can only be signed on Macs. Remember, once Jobs turned his back on the Apple-II concept and sent Apple down the road of closed-architecture, Apple users have been far more captured than Microsoft users. I was listening to an electrical contractor complain the other day about how Apple's home stuff is "unique" and makes life miserable when it comes to flexibility on what can be used in an overall home system.
-
if someone doesn't have a Mac, they are out of luck
Don't go complaining to Microsoft about that. My understanding is that's a restriction imposed by Apple. iOS apps can only be signed on Macs. Remember, once Jobs turned his back on the Apple-II concept and sent Apple down the road of closed-architecture, Apple users have been far more captured than Microsoft users. I was listening to an electrical contractor complain the other day about how Apple's home stuff is "unique" and makes life miserable when it comes to flexibility on what can be used in an overall home system.
kburgoyne1 wrote:
Don't go complaining to Microsoft about that
You are correct. I wasn't really complaining about it as much as just sighing over it. Android is so nice because I can develop a native (or Xamarin) app and instantly try it out on my real phone. iOS is quite a bit more hoops to jump through.
kburgoyne1 wrote:
Apple users have been far more captured than Microsoft users.
You are right about that for sure.