I’m trying to decide on using Xamarin or Android Studio. I’ve written quite a bit of Java and used Android Studio before but I work with Visual Studio and the Microsoft stack during my day job so I could go either way. I plan to deploy to Android but I like the idea of being able to deploy to iOS if I ever wanted to without too much extra effort. I suppose I could put it on the Windows store too. So, I think I’ll try writing this in Xamarin especially now that it’s free and integrated with VS now. I have this sneaky suspicion I’m going to run into all sorts of silly issues during the Xamarin translation from forms to Android SDK. I’ll give it a try and if Xamarin gets in the way then I’ll dump it.
I’m also a little worried about the lack of documentation. I already ran into an issue with Navigation.PushAsync not being supported on Android and that was right out of the Microsoft tutorial. The suggestions I found on Stack Overflow said to use what I believe was a non-cross-platform solution. Thankfully someone suggested Navigation.PushModalAsync and that worked.
So, here’s my initial screen written in Xamarin on the Android emulator.
Notice how simple it is? Yes, part of that is I don’t know what I’m doing yet but also I’ve found some other garden apps sort of hit you at once with all the stuff you can do. When I plan a real life garden, I start with step 1 which is to plan what I want to grow. I don’t want a bunch of stuff on my screen. I’m one of those people who prefer Samsung’s “easy mode”.
The first button takes you to this screen.
I’m not sure I like it yet but I’ll go with it for now. The other option where you already have a garden doesn’t mean you’ve already created a garden in the app. It means you have a garden outdoors and you’re starting the app “mid-season”. I don’t know what I want that to look like yet but the idea is the user isn’t going to want to enter a bunch of plants and details when they’re already in the ground. Maybe that will be some quick entry for what you’ve already planted. If, in the end, it doesn’t save much time, then I’ll drop it.