I am working on a project which will have some part developed as a Android APP and some part as a website. The website would be a content management system, and the android app will be one of the consumer of the data.
Just to be aware, my background is completely .NET, C#. And i am learning, Java and Android, so far good.
I was thinking about the technology i should use, so that the two parts can communicate and also how i can reuse most of the common components like Logging, Instrumentation etc.
Few questions where i am not sure which would be the best choice:
Sharing cross platform code? In android i am writing code in Java, and in the website C#. I am facing an issue where how to re-use the common components like logging. I have heard about some tools like IKVM, but are they really worth? Or writing the code at two places will be a better choice in long term ?
Database: I am planning to go with ASP.NET MVC and MySQL and then on Android i can have a SQLite local DB, which i can sync using a web service. I really want to use MSSQL Server (because i know it very well). Is there a way to sync the MS SQL Server hosted remotely and the local Android SQLite DB? Or any other suggestion.
Also, if anyone has any suggestion in how to architect a hybrid solution like this, it would be really helpful.
Note: I cannot use tools like Xamrin as they are not free, and cost is a worry for now. Also, i want to really develop a native android app, which means i don't want to go with PhoneGap etc.
Thanks in advance.