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 14 days ago.
Improve this question
We have some Android Applications which share data models and other stuff. So my plan was to make a library for that which can be easily extended and implemented in these Apps and maybe also in future Apps.
What is the best approach for that?
For just testing around, I implemented a module to one of the Apps. But this has the problem that it is bound to this single project and its version control which makes it a pain in the b_ to maintain. Also its not practicable to work on because everyone has to have and work on this App project for library changes.
My thoughts were to separate them but how? I have researched alot and didnt find a way to create a standalone library. The only way Ive found so far was to create a whole new Android Project and manage the library in it and seperate it from the :app Module. I dont know but this doesnt feels straight forward.
What is a good way to manage a library which has its own version control and can be easily maintained from everyone? Is the own Android Project the way to go?
You can still setup a separated VCS for a module and maintain it in another repository. git-submodules is a way around it.
As you've mentioned, another approach is to create a new Android project for the library and distribute it separately. It's very straitforward way, but it's simple less error prone.
Related
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 2 years ago.
Improve this question
Some friends of mine and I are developing an App as a school project in Android Studio because the only language we currently speak is Java, and we don't know how to work as Team e.g. How do we share the code with all of us, or if we shall do it with GitHub how does that work too? We have little experience in these things and would appreciate it a lot if you could help me what we could do and what is the best way to proceed
You need a distributed version control system.
The most common version control system is git, but svn and mercurial also exist.
Then the version control system needs a centralized way to distribute the latest changes to everybody. The most common is Github; there is also Bitbucket and Gitlab.
Since you ask very general questions, I think the easier way would be using Github because it is the most common, and it integrates fairly easily with Android Studio. Even when solving differences between files (conflicts), Android Studio offers some handy dandy dialogs to ease the editions.
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 5 years ago.
Improve this question
I am just a beginner and at the time of developing i was blind about following an architecture, but now I've come across many awesome architecture and frameworks out there which i can follow to make code clean and easy to maintain.. so I have 3 questions
1) Is it a wise thing to change already developed project to follow a particular structure or framework like MVP and MVVM.
2) If yes for first question, how much time does it take (I know it depends on the project size but still rough estimation)
3) Which architecture would be better suitable to change the structure. (I've already gone through many documents and stack overflow questions of comparison. But here i want to change the whole structure. so which one would be best for this)
1) It'd be better if you stick to one particular architecture from the beginning of developing your application. It's gonna be a tiresome job if you wanna change the architecture, you're gonna have to do it from scratch.
2) It'd probably take as much as time as you did for creating you application with mvc architecture I guess.
3) I'd go for MVP architecture. It's the better alternative to MVVM if you're planning to change from MVC.
If the amount of code you have written is not very large , you can certainly change the structure.
MVP helps you to seperate views from logic and i have found using it to be very helpful when it comes to adding new logic , methods or modifying existing code.
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
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 8 years ago.
Improve this question
I want to know what are pros and cons for using external libraries like these in application development.
It is possible using these libraries application may run well on one device but may not run on any other device, application performance, size of apk using these library?
And which one is good idea while developing application in Android studio to copy file in libs folder or add it in dependencies and stay connected to internet.
It's hard to tell the pros and cons when using an external library in Android app development. Most of the time, it depends on the real circumstance. If the library simplify your app development and it's specially optimized for Android, it's worth to try.
When it comes performance about external library, the document says we should be careful.
As put libraries in libs directory or referencing them from mavencenter/jcenter repository, the result is the same. It will be compiled to your app by android app tools finally. In order to simplify your life, referencing the libraries from an internet repository is a better choice. You don't have to worry the version and dependencies. Android studio now has adopted this way.
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 3 years ago.
Improve this question
independent from the fact if it makes sense or not, if it is a good way to create Android apps or not: for (educational/personal/whatever) reasons I want to create an Android app with graphical user interface in C++ using the NDK.
What I found so far are some information about the NDK, how to create native libraries and how to access them out of Java applications. But what I'm really looking for are some information how to create a View and to add graphical user interface elements to that View out of my C++ NDK app.
Any ideas and hints how that can be done or where some more information/HOWTOs can be found regarding this?
Juce is a fantastic C++ UI framework that works well on Android.
It can be used under the GPL or a paid-for commercial licence. The community is fairly active and the author is very friendly and helpful. I found it relatively easy to build using the NDK tools on Windows.
Caveat - it seems Android isn't a high priority platform for them, so some things are missing at time of writing (e.g. support for hardware buttons). Still, in my experience, the UI framework does work very well on Android, and that's what your question is about.