can I use MVVMCross library as MVVM platform outside Xamarin With any Android Native project?
if no , is there any native MVVM framework for android applications ?
Currently MvvmCross relies on C# - so using it on Android requires Xamarin.Android.
You could possibly port it to Java, or could try the dot42.com platform which compiles C# to Dalvik.
For pure Java alternatives, you could also try a couple of library answers from Android data-binding (similar to WPF)?
Hi I would like to recommend RoboBinding to you, A data-binding Presentation Model(MVVM) framework for the Android platform. There are a minimal sample app AndroidMVVM and an album sample, which is an android translation of Martin Fowler's original sample created to explain the Presenation Model(called MVVM in microsoft community) pattern. Both samples can be imported into Android Studio with no extra config. The pattern is an involvement from old MVC pattern and its major motivation is to further decouple UI state and logic to a PURE POJO presenation model, which allows to be easily unit tested. If you like RoboBinding, i encourage you to have a look into its source code and have a feel of its code quality.
Related
When starting a new Flutter project in Android Studio, it gives you the choice of android language between Java or Kotlin. so the question is:
Is my choice affecting any type of performance or compatibility? Application size or Error-handling ? Is there any difference at all ?
Same goes for Objective-C vs Swift ?
Pick Kotlin and Swift as they are the newer and more preferred languages of those platforms
Although it really doesn't matter. You won't use either of those languages much. You will mostly interact with Dart
Use
Android -> Kotlin
IOS -> Swift
because these are the languages that apple and google recommend.
Use Kotlin for Android and Swift for IOS. In Editor you would be using Dart.
My Recommended is to Go for kotlin in Android. and For IOS go for Swift
One of the best reason is Google and Apple recommended and preferred this languages.
Second things kotlin is very optimized language so it's reduce the codes and make your dart file more clear to understand.
Third things kotlin supports multiple platforms. where java have some limitations in it.
But at the end both of the language is very useful to developed a single app.
Note : If you start for Application development in native Android, First Go for Java language then you have to learn about kotlin. because Java is a Base of Native Android
I am a ios developer , We have a requirement where we have to develop an app (with Maps,GPS tracking,Charts) in both ios and android, We are planning to use Xamarin cross platform to develop so that we can write common business logic for both the projects,
As per my research its not recommended to use xamarin.forms for the apps which needs more platforms specific functionalities like Maps,GPS tracking,Charts
by my research I found Xamrin.ios and xamarin.android are best approach to implement more platform specific functionalities
My question is , Xamarin.ios and xamarin.android are they 2 seperate projects? could I able to share business logic between those? As per my understanding in xamarin.ios and xamrin.android we will be calling our native ios/android APIs and frameworks hence we cant share the code , am I right?
Can we share code in xamarin (Xamarin.ios/xamarin.android) if we dont use Xamarin.forms?
Wat are the benefits we will get if we use xamarin.ios/xamrin.android instead of Native development with obj c / Java ?
You can have a Xamarin.android and Xamarin.iOS project in a single solution and have code sharing with a common business logic using MVVM design pattern , PCL (Portable Class Libraries) and linked source files. For the case of platform specific code in a shared code , inversion of control can be used
You try to squeeze as much as common code behind as possible , so you will only have to implement the GUI twice (Android and iOS)
If something is written in VB is it compatible with android?
If so, can you give me some documentation?
No, you can not use programs written in visual basic on android. Android uses java. The closest you'll get is Mono For Android which currently doesn't support VB.NET.
EDIT: (7/12/2016): This is now supported via Xamarin
I assume you are talking about VB.NET, then Mono does not yet support it.
Currently Mono for Android does not support Visual Basic.
We are looking at adding support for Visual Basic on upcoming versions
of Mono for Android.
Technically, what needs to happen is the following: we need to provide
the Visual Basic helper library (part of Microsoft.VisualBasic.dll)
and compile it to work with the Mono for Android mscorlib.dll instead
of the standard Mono 2.0 mscorlib.dll
With the above it will be possible to use Microsoft's Visual Studio to
compile VB code that will run on Mono for Android. But we want to
support Mono's own Visual Basic compiler, but that will also require
the compiler to run using the Mono for Android mscorlib.dll. This is
not difficult, but requires time to get done and integrate into our
release process.
At this point there is no ETA on when the above will happen.
2: http://mono-android.net/FAQ
You could try however Basic4android if that suits your needs.
The closest you're probably going to get is VB.NET via MonoDroid, which according to their FAQ currently does not support Visual Basic. (But they do have it on their radar at least.)
VB is a Microsoft product. While there are some 'nix' implementations of .Net product like Mono, Android is unlikely to support .Net mainly due to liscencing.
what design Pattern used to design the classes of android API's.Such as Java Swing uses MVC and command pattern, Java RMI uses Proxy pattern,java.awt uses composite pattern,java.util.Calendar uses factory pattern.
If you have done some Android application development before, you would find by using Android Binding + MVVM(Model-View-View Model)Pattern, you no longer need to deal with those TextViews, Buttons in your code.
When I do iPhone development I use mostly Delegator, so I believe Android has no difference.
In order for reuse ability on iOS, I would like to write the logic for my Android game in C++ rather than java. How can I create a C++ class in eclipse and integrate it into my application?
I have read "native C++ code can be used on Android as well using the Native Development Kit (NDK)". What is the latest and greatest way to do this? I am writing a simple OpenGL app? Are there any tutorials out there that people have found useful?
Thanks very much.
Investigate using the JNI and NDK here:
http://developer.android.com/sdk/ndk/index.html
I have written a multi platform 2D engine that runs on a fair amount of platforms. It's possible to do though not relatively easy to implement.
The way I did it was split it up in 2 parts where I used Java for the Activity lifecycle and some additional assist functionality and library encapsulated C++ code for all the rest.
For the C++ I used the JNI where I had two shared libraries. One library held the core logic that ran the entire game and then the other library was a sort of passthrough library with a couple of methods that were called from Java. This way, I could just recompile the core library on each platform without a lot of difficulties and I could rewrite the UI section for each platform. On iOS, I wrote it in Obj-C, on android in Java and on Windows in C/C++.