About Android Frameworks, UI design, and tips [closed] - java

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
Is there some native android framework that uses only java? Example: create buttons, text fields, containers, ext.
And my biggest problem is with the design. I would like to know if is there any framework that facilitates apply styles to buttons, fields, layers, etc? Like twitter bootstrap, but only in java. I do not want html and css frameworks .. I used the phonegap and is very slow compared to native app.
I should use Framework or create my own code?

I highly recommend using the native Android framework using Java to write your code and XML to write your layouts.
The first reason you will want to do this is speed (like you said yourself, native apps typically run much smoother than apps created using PhoneGap and other third-party frameworks).
The second reason is that there is a ton of documentation and tips online teaching you how to write Android apps... there won't be nearly as much documentation available to you if you decide to auto-generate your application using some sort of third-party framework.
To help generate layouts, there is a GUI-builder that you can use in both Android Studio and Eclipse.

The Android SDK available from developer.android.com is the preferred framework. It is based on Java. Apps are written in Java, using the Android API. You must use the Android widgets, not the Java Swing widgets. You can apply styles to Android widgets.
When you go into a new development environment/platform, regardless of what it is, you can only take your existing knowledge so far. Designing web apps and web GUIs is not exactly the same as designing Android apps and GUIs. Designing an Android app is not even the same as designing an iOS app, although many developers make that mistake.
You may be able to craft a simple, functional app using a development tool such as twitter bootstrap (in the past, these were known as "fourth-generation languages" to differentiate them from regular programming languages such as PL/1, Pascal, etc.). At some point, however, you won't be able to get exactly what you're looking for, and then you'll have to learn how to use the SDK as delivered.
In short, none of the shortcuts get you there exactly.

Related

Creating desktop application based on Android project [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've created an Android application, which is generally aimed on Tablets. Its main business-logic is in pure java, it contains around 10-15 Activities, SQLite database, it performs HTTP transactions, exports information to different formats etc.
My customer now (out of a sudden) wants to have exactly the same application running on Windows 7 or 8.
What is the simpliest and the most straightforward way to create such an application (I do not consider using emulators)?
I've never created GUI for Java-applications before.
Gradle subprojects
Since you are probably using gradle already, you can decouple your business model from the platform, moving them to another project, from which your android and desktop projects will depend:
--Main Project
|-- core
|-- android
|-- desktop
https://docs.gradle.org/current/userguide/multi_project_builds.html
Platform Agnostic Frameworks
If your app is using frameworks like retrofit, which work on both and Android and common java projects, you can move its usages to the core project.
GUI for desktop project
This question covers very well different GUI frameworks from where you can choose.
Keeping your MVC
Decoupling your project in such a way is not an easy task. You'll need to carefully think on how your core project will interact with the others (i.e some internal API). Basically, you will keep working on a MVC-sort-of-architecture, but now your android project will be a view, and your desktop will be another.
Similar question: java desktop and android application at the same time - shared packages
(Little bit off-topic but it might help you)
While the multi-project approach might seem like a nice reuse of existing code, it might get harder depending on how your current project is structured.
Another approach would be to use something like Electron with Polymer and/or AngularJS.
If you are familiar with web technologies, it can be a lot easier to create your desktop app like this. And you have a plus: a browser app is just one step ahead.
Also, Polymer keeps material design on your desktop app, making your designs more consistent between platforms, which might be difficult to achieve using native java frameworks for desktop.

Can JSP and Python used together for same database? [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 8 years ago.
Improve this question
I'm a student who work part-time at a start-up, which runs a website made with JSP.
We are planning an android app in this summer and I'm considering developing it with Python, which I'm interested in.
However, the service provided by the app is supposed to be added to the website made with JSP later. I'm afraid the difference of the language would cause any obstacle.
Since they will use a common database, I think using different languages to access it won't have any problem. I want to make sure that my guess is correct.
Pardon my poor English. I'd appreciate your answers.
I would recommend building the API services in the current language used by your start-up. If resources are limited, the company may not wish to maintain services in another language.
Though I would not recommend this, it is definitely possible for you to develop the portions of your Android application in Python and use a different language for the API services (assuming you are willing to use Python libraries like Kivy).
This will allow you to code a chunk of your application logic in Python.
To consider:
http://kivy.org/#home
https://code.google.com/p/android-scripting/
We are planning an android app in this summer and I'm considering
developing it with Python
Native Android apps are developed using Java.
However, the service provided by the app is supposed to be added to
the website made with JSP later. I'm afraid the difference of the
language would cause any obstacle.
You will need to create an API that communicates between Android and your database.

Swing-Library for Android? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I know that Android uses Java but not a fully compatible runtime library. Creating UIs in Android is done completely different than for normal Desktop Java. Nevertheless that's a really stupid thing in my opinion, very much Java applications out there have to be rewritten for Android (instead of modified only slightly).
So my question: is there some kind of (3rd party) Swing-library available for Android? Means a Java-package that contains Swing-compatible classes so that an existing Swing-Application has to be modified only slightly? It of course can't be 100% compatible but modifying some things that do not exist on Android is much less work than rewriting the whole GUI-part...
There is no way you can use swing in android, because android is not based on JavaSE, while swing is. android uses a special java that is designed to run on DVM .
Even if their is no compatibility issue. Swing is used for desktop apps which differ in their UI completely from mobile apps.
So given the above points unfortunately you will have to rewrite the UI again for your software. but on the bright side, android's UI is very simple and fun to work with.
give it sometime and good luck!
Edit:
Comparison between Java SE and Android's Java
CodeNameOne?
Supposed to be very similar to Swing.
Also, in my experience, GWT is somewhat similar to Swing.
Either of these will require a rewrite from Swing though.
There is no Swing on Android. You can always develop a JME application and run it via emulation, but that's as close as it gets. Unfortunately, in technology, things change all the time, so for programmers, it's a case of "adapt or die."
Unfortunately, as far as I know, Java Swing Desktop Apps can't run on Android (Dalvik VM), but the good news is: JavaFX as a successor to Swing GUI technology has already been ported to mobile and embedded platform (e.g. Android). If you're interested in this, go http://gluonhq.com/products/mobile/javafxports/ for details.

Is there any difference between Oracle's Java and Java used in 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 8 years ago.
Improve this question
I have started to program in Java SE recently, and I noticed from many articles and heard from rumours, that Android applications are developed in Java, or in a language similar to Java.
I noticed also that there are other packages to use, because we have to develop for mobile devices.
Until recently, I was never interested in mobile devices and applications, like the Android OS, but now I understood that this is the future, and a great chance of a job.
My question is: if in the near future, I want to develop something in Android, do I have to learn a different Java language than I used to program now?
Are there a lot of differences, programmatically, between the Java language and Java used in Android?
Thanks.
There is no difference between Java and Oracle's Java . It's called Oracle Java because Oracle owns Java. You can develop the Android application using Core Java.
If you know Core Java then you just need to learn the Android SDK to develop Android applications.
Refer this site for learning Android: Android Developer Site .
Android applications are written (most of the times) in Java. This is a pure java with additional libraries, minus some of the UI libraries (such as swing). It even compiles to class files, and then converted to .dex files which are the executable for the Dalvik VM.
If you already know Java, you'll need to learn the usage of the Android SDK and operating system, not a new programming language.
See some basics at the Android developer site
The omission of many of the base class libraries (eg those that are in the javax namespace) means that while the language is identical, many libraries written in Java will not work out of the box.

Framework Choice / Recommendations for Google App Engine [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 9 years ago.
Improve this question
i want to develop a big web application in Google App engine, but I don't know which framework to use in order to obtain the MVC Model. I prefer to use Spring MVC, but I read that several problems with GAE. Another option would be to use django with python but I have never used that. What framework or option do you recommend? Are there other frameworks?
Greetings
You should check out web2py -- it's a full-stack Python MVC framework that's very easy to set up, learn, and use. It was designed to run on Google App Engine out of the box, and there's a whole section in the online book dedicated to GAE (there are also other references throughout the book discussing a few special considerations when developing for GAE). There's even a "Deploy on Google App Engine" button in the web2py browser-based IDE (see the IDE demo home page and GAE deployment interface).
Your web2py GAE apps will also be portable -- you can deploy them on other platforms (e.g., a Linux VPS) without changing your code (though you may want to make some adjustments once you're off GAE and no longer subject to its limitations).
If you have any questions, you'll get lots of help from the mailing list.
I've used Stripes on Google App Engine with success and pleasure. It's a simple yet really powerful MVC stack, very easy to learn and use, and with great documentation. I've been able to integrate it with Guide (for dependency injection) and Sitemesh (for page templating). If you're interested, the code for the application I developed is available at http://code.google.com/p/memwords/.
Django is a best framework for projects without incredible high load, but GAE supported by a very old version.
Try to use Pycharm for editing GAE-applications. This is already usable IDE with active development
Take a look at Tornado, it's a scalable, non-blocking web framework in python and it's simpler and easier to develop in than Django.

Categories