Advice for moving from WP8/WPF to android development [closed] - android

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I'm a WPF and WP8 developer and I'm planning to develop all my current apps for android too. I did some research and read a little about android development. From what I've read, Android's XML is terrible compared to XAML. The tags are long and terrible (For example, why couldn't they just have Width instead of android:layout_width ?) And the most annoying part was that there is no equivalent for data binding.
So, I looked into alternatives and came across Xamarin, which seems a better. But I have a few questions I was hoping someone would help me with.
My biggest question is should I go for Xamarin or go ahead making native android apps in java? Is there any disadvantage on using Xamarin? Because there is a good thing about it that I can reuse most of my code..
Is there data binding like functionality in it?
Does Xamarin support all features that a native app would? Will I be able to get Material UI design templates in it?
Also, if you have any other advice or suggestions do let me know.. Thanks

My suggestion would be.
1)
Take it easy. Android development is not that bad.
It is true, you do not have data binding facilities as you have in WP but that is not end of the world.
Android xml is simple and it beautifully solves the issue of different screen sizes and types.
You have to write more code in android than in WP. WP came after android which allowed Microsoft to come up with better development patterns for rapid development.
2)
Big no for Xamarin. Xamarin reduces your options because it relays on android library wrappers in c#. Only benefit of Xamarin is to have common business logic. that is normally 5% percent of any project. In most cases you would find yourself in very tight situation; for instance, if there is any good 3rd party android library that you want to use in your project then you have to wait Xamarin wrapper for this library in order to use it.
3) Not always, you would find restrictions

Related

Do I really need to learn xml for android development? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 years ago.
Improve this question
I am a Python programmer and I want to learn android app development. My million dollar question is, do I really need to learn xml? Can't I just use the design tab in android studio and drag n drop elements to make the design?
Well well it should be noted that whether any technology is used in certain IDE it would be good to have some background knowledge or at least know what is it for..
Overall is not hard to learn XML at a functional level.
What is it?
A Xtensinve Markup Language which basically work with tags, it was created for be self-descriptive.
<deliveryTag>
<to>Michelle Obama</to>
<from>Barack Obama</from>
<note>Happy Birthday!</note>
<type>First Class</type>
<package>Regular Size Box</package>
</deliveryTag>
What is it for?
Designed for carry data, and have it well-organized of course.
People really loved how it simplifies the data sharing, transport and availability eventually it became one of the standards cross-platform.
Finally..
XML was designed to carry data -> it focus on what data is.
HTML was designed to display data -> it focus on how data looks
Both of above are NOT programming languages but languages for structuration.
You will have more control over your project even if you drag and drop, at some point you will note that Android Studio demands to fluently use XML in many parts of the software development cycle.
Yes you can just use drag and drop editor, all attributes can change there, but when u face with an issue, you can't find your answers in Here because all of android developers work with xml.
It's too easy to learn, don't afraid of it.
You can use the design tab for constructing the application UI, But for complex design, it's not advisable.

Automatically convert code between Xamarin iOS and Xamarin Android [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
The community reviewed whether to reopen this question last year and left it closed:
Original close reason(s) were not resolved
Improve this question
I have been using Xamarin to build an iOS app with a very customized layout. My plan is to build exactly the same app in Xamarin Android. I am eager to do it and I am interested into getting to know Android as well but it's alot of work to repeat. Xamarin Forms shares GUI code across platforms to some extends but it makes me wonder if there are any plans to automatically convert code between iOS and Android. Auto conversion would safe alot of time and allows the developer to choose his favorite platform to develop on.
There are sites like https://www.myappconverter.com/ and http://www.apportable.com/ for converting between native languages not sure how reliable they are. My question is if there any future plans or open source projects for auto converting Xamarin iOS to Android and vice versa?
Thanks!
No, there are no plans about converting code. Xamarin gives you the opportunity to share as much code as possible over different platforms. You can use Xamarin.Forms to create a UI once and get it rendered natively on all platforms. In case you don't like the restrictions of Xamarin.Forms you can chose Xamarin.iOS and Xamarin.Android to build the native UIs.
MvvmCross allows you to use the MVVM-Pattern. By doing this, you only need to recreate the user interface itself without writing navigation logic twice.
If you don't know whether to chose Xamarin.Forms or not, take a look here: When to use Xamarin.Forms vs Xamarin Native?
Converting code automatically is a bad idea in general. Platforms and languages are so different that the result of an automatic conversion never feels great.
Xamarin already provides everything you need to create UIs for different platforms without much pain. It's on you to take the best out of it.

Native or framework programming for my app? And if framework, which one? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I want to develop application for Android and iOS.
It will be simple application with some data of users and some achievement animations.
It will comunicate with our servers, where will be used REST as backend.
I need the application to be secured. There will be stored very sensitive data.
I think application won't need much performance.
I'm going to be project leader, so I have to find programmer. So if I use framework, then the programming language will have to be in good performance/price ratio.
It's difficult to answer your question due to lack of information, but I have gained some experience regarding this topic from the past year.
The choice of your frameworks depends on time/cost, resources and know-how. I suppose your question is about whether to use a webframe including webprogramming, or native iOS and Android implementation.
The big advantages of using a Webframe are:
Can easily be included on both platforms Only has to be implemented
once (with a view platform specific adaptions e.g. access to camera
etc.)
No additional know-how is required (just JavaScript and HTML)
The implementation is easy and development fast Subsequently the development time is reduced
The disadvantages are:
Webframes are slow
If there are animations like transitions it could be laggy
User triggered events could also be delayed. (just a few milliseconds, but it could be very annoying.
This could conclude in a total useless app, because the userexperience is very bad.
If you want a throughout solid app which offers a flawless userexperience I highly recommend a native implementation. But you have to consider, this affords experienced Android and iOS programmer, and is associated with more development time and subsequenlty more costs.
I recommend to implement a simple prototype which includes the animations and the main features. If the userexperience is good then go for it.

Architecture for Client Side Apps [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I need to write a client side application which communicates to a WCF service.
The app is actually targeted for multiple platforms.
Internet Browser.
Android.
iOS
Windows Phone.
The client side is rich on UI.. should contain animations and "fireworks"..
In the past, Flash used to be the generic 'Glue' to hold all that.
But These days, I keep seeing and reading about HTML5 hype..
I also heard and read a bit about Xamarin but will not dive into it before I get some confirmation that it can deliver what it promises.
So, My questions are as follows:
What would be the technology to use in order to develop client side?
Html5 or Xamarin - or should I just stick to flash?
do note - this is not a request for opinions - or in other words:
I'm looking for answers of experienced developers who already done something like that and can tell me of a sure path to success.
Xamarin and visual studio - is it correct that this will allow me to develop everything on VS.2012/2013 IDE and will be able to output packages per OS?
Keep in mind I'm MS oriented dev.
Thank you.
You mention candy crush.
The realistic answer in business today is simply develop the iOS, Android, and anything else natively. It's the only thing that really works.
Trying to save a few dollars on 'cross-platform' is useless.
For 2D or 2D games specifically, you should use Unity3D, which is the overwhelming market dominator, currently, for games production.
In general there are any number of better-or-worse "cross-platform" things like xamarin, appcelerator, etc etc.
But the overwhelming factor in your project will be, you need to forget about a server side and change to parse.com. That time-saving will utterly overwhelm any "minor" decisions about what to program the different platforms with.
FYI Unity3D works with c#. Android is Java. iOS is objective-C.

Tkinter to android translation [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I have a relatively simple tkinter program that just uses Event, Button and Label objects. I would like to translate this to be usable on an android platform.
1) What python for android should I use? QPython, py4a?
2) And on that platform, what GUI module should I use?
I'd like a little bit of detail for why you think a specific module or app would be best, as I'm just getting into the android scene and want to make an intelligent jump.
Even for native purposes, most developers would advise you keep away from Tkinter. It's a dated and unintuitive library that often makes GUI creation and maintenance harder than it needs to be.
The main advantage of developing apps using a Python library and embedding in Android is cross-platform support.
These libraries will often allow you to port your app with ease to many different operating systems.
I will not answer which is "best" since this is an opinion-based question outside the scope of StackOverflow, however I will say it is (generally) easier to port from Kivy to android than it is in some other libraries (such as Qt). But take this with a grain of salt.
Most libraries nowadays offer advanced GUI capabilities built-in, and your choice will likely not limit you in that regard.
Either way, there is no direct/simple way to translate your Tkinter project to any of these, and you will likely have to rewrite it with the library you end up choosing.
I will add that if your intent is developing only for android, most would advise developing in a native Android language, such as Java or Kotlin, or using a development tool which makes use of such languages. This would result in smaller APK sizes and likely faster running times for your app.

Categories

Resources