Use the latest and coolest Android development technology and Android Development Technology
First, the development tool certainly cannot use eclipse, and of course android studio. Of course, the api version must be 23 + to support cardview, RecyclerView, and percentage layout.
In addition, android support v7 and android support design are introduced, so that the interface effect will not be too bad, that is, the metal design style.
In addition to the interface, you also need to access the database and network requests.
For database operations, android has corresponding functions to operate sqlite, but the default method is to use SQL statements for operations, which is not very convenient and fast, so we need to use ORM. What about greenDao? GreenDao has been used before. Although it is highly efficient, it is very troublesome to use. Therefore, it is much easier to use dbutils provided by xutils. At present, it does not feel efficient.
Although the use of orm can make the database read and write very convenient, there is another problem, that is, the expansion is not convenient, and the program is not a problem during development, as long as you modify the entity class, then the framework can re-create the table. This is good, but once the program is released, it cannot be changed. Therefore, we consider using nosql, and there are also a lot of android-based nosql. We can consider introducing SnappyDB at the front-end time.
Network operations can be used by Volley, and the data format is better than json. In some cases, the xml-based SOAP protocol of webservice is used. In my opinion, the xml format is of no benefit, SOAP and other protocols are relatively old. Obviously, json is simpler and saves more traffic, and can be better combined with web-side js. It is based on http protocol (for json parsing, fastjson is used ).
However, volley does not use cookies or https, and it does not seem to be able to upload images. It remains to be studied, or there are other better frameworks.
It is very common for Android apps to embed webview, to display text and image rich media content, or to use html5 to expand applications or to implement some interfaces, the so-called hybrid.
However, there are still many issues that need to be considered for applications to support the hybrid feature. It is not simply embedded into webview, such as js Code interaction with java. But in fact, many problems have been solved in some frameworks that use html5 to develop mobile applications. These frameworks are also open-source.
Therefore, I want to import these frameworks in the form of a third library to provide webview support for the app, and also have the hybrid feature. In addition, these frameworks can be used by many extension libraries, this seems like a good idea.
If you note that html5 is used to expand the function, you can add a link to the public account to open the mobile website. In addition, js-api is also provided to call some functions in the app, such as photo albums and photos.
If the app code can be placed on the server side and dynamically updated, it is of course very good. There are also some tools to dynamically update the program code, but I have never used such tools, considering code obfuscation and other issues, I am skeptical about this method. If you have time, try it.
ReactNative uses js to write native applications, and can also dynamically update Code. In addition, it looks good to use css-like methods to write interfaces. In android development, the interface is defined in xml format. I don't feel good about it. I am very embarrassed to have a lot of repetitive and interfering things. Maybe the ReactNative interface can be better defined (to be studied ).
Android uses java for encoding, but how about java? If java is better than c/c ++ (for people ), however, compared to a more advanced programming language, I feel that the java statement looks too long. Because of this, there is a jvm-based Dynamic language, such as groovy and policy2.4, which will support Android later, but I don't think it is necessary to change the programming language.
In fact, I think groovy should be used to improve the Android programming interface (xml). In groovy, the so-called DSL, the way to declare the dependent library in gradle is better than the pom in maven. xml looks better, and more importantly, you can use the groovy script as the configuration file to determine the loop, which is very flexible. Therefore, if you can use the groovy script to define the android interface, it will be much more fun than the xml method.
Well, there are some ideas that may be impractical and need to be studied. There are also sdks available for image loading, pushing, MAP, payment, and even language recognition and Language Synthesis.
If you think this article is helpful to you, please follow my public account: zhaojieTec. For more information, please wait .....