First of all, explain the types of app development:
1, there is a native app, which is close to the bottom of the system and can call system components. Stability, the disadvantage is that the development cycle is long, and it is developed in java language.
2. The app based on web development mainly encapsulates the webpage of the mobile phone into the app. The disadvantage is that it is essentially a web page, which can be used by both Android and Apple. It needs to master the front-end knowledge, such as html, css, javascript and so on. And background interaction also needs php, mysql, etc.
3. Mixed development, the popular development method hybirdapp at present, has the advantage of short development cycle and both. This only needs to master the front-end and back-end knowledge. Based on the above summary, I'll give you some suggestions as follows: 1. First, do a project with few functions. You can try to make a music player or calculator and so on. Of course, the most important thing is to improve your ability. Let's go
Android rapid development tool?
Android has several rapid development tools:
1、Androidapktool
A tool for reconstructing apk. You can decompress all kinds of apk packages and view complete resources. Currently, viewing source code is not supported.
2、unyaffs
You can extract img files in yaffs format.
3、unyaffs2
You can extract img files in yaffs2 format.
4、traceview
Android's own tools, you can see the running time occupied by each function. Please refer to the documentation for specific usage.
5. Layout options
Android's own tools are often ignored, and the optimization suggestions of xml files are given under the layout file.
6. Inventor of application program
The online android development tool developed by google is very elementary, which is more like the development method of PLC.
What technologies are needed to develop Android mobile app?
What technologies are needed to develop different types of apps? Web app: The built-in browser of IOS/Android is based on webkit kernel, so when developing WebApp, most of them use html or html5, CSS3 and javaScript technology for UI layout, so that it can realize the traditional C/S architecture software function on the website page, and the server technology uses Java, php and ASP. At present, there are many platforms for generating Web Apps with one click, such as Baidu site app// mobile development platform APICloud, which provides Web Apps generated based on Tencent x5 browser engine. Because the super traffic portal WeChat/mobile qq on the mobile terminal also uses Tencent x5 built-in browser, the app generated by Tencent x5 browser is suitable for the browsing experience of WeChat when displaying mobile pages, which can help the Web app to drain. NativeApp: developing NativeApp requires different development languages according to the running mobile phone system. The development language for developing AndroidApp is java, so you need to be familiar with the environment and mechanism of Android. The main knowledge points are as follows:
1. development environment, AndroidStudio, eclipse. How to build an Android development environment can go to Baidu.
2. Data structure, some functions of App involve algorithms, so it must have a certain mathematical foundation.
3.AndroidSDK can develop API interfaces, including the ability to develop APIs and the experience of calling the third API.
4. Familiar with tcp, IP, socket and other network protocols.
5. If the server is involved, you need to know the webservice and the corresponding development languages, such as PHP, JSP, ASP.Net, etc.
6. In addition to these functional foundations, App development also involves UI design, framework, performance optimization, debugging and adaptation. Objective-C is the mainstream programming language for developing iOS App. Developers generally use Apple's iOSSDK to build a development environment. IOSSDK is an indispensable software development package for developing iOS applications, which provides tools from creating programs to compiling, debugging, running and testing. Learning ios development can go to Apple's official documentation, which is the most authoritative iOS tutorial. HybridApp: The mainstream of mixed development is web-based development, that is, a hybridApp development type written in web language and interspersed with native functions. Web languages mainly include html5, CSS3 and JavaScript. The user experience of web-based App depends on the interaction and cross-platform ability of the underlying middleware. There are many excellent development tools at home and abroad, including AppmAkr and Appmobi abroad and APICloud at home. The underlying engine of APICloud uses DeepEngine, which translates the running web into NativeAPI by semi-translation principle, supports extended API, and can call functional modules developed in native language during development, so as to achieve a user experience comparable to that of native App and save development time. For enterprises, they can choose different development types and tools according to their own needs. At present, HybridApp has become a mobile development trend. On the one hand, HybridApp does not use native language when developing, but it can have the characteristics of native application. On the one hand, with the development of web technology, HybridApp technology has matured. Many large-scale apps such as Taobao, WeChat and Ctrip belong to this development model, and HybridApp brings great convenience to the development, maintenance and update of enterprise mobile applications. Considering the cost and user experience, HybridApp is the first choice.
What is android development?
Android development refers to making applications on the Android platform. The early Android was founded by AndyRubin, the father of Android. In 2005, Google acquired Android, a 22-month-old high-tech enterprise, and launched SMS, mobile phone search, location and other services. The universal platform based on Linux has entered the development stage.
The knowledge systems that software development needs to master are: Unix/Linux platform technology, enterprise database technology, Java language core technology, software engineering and design mode, Android application development foundation, Internet core technology, Android system-level development and JavaEE core technology.