app开发——安卓native开发思路记录

我们知道app开发目前有三种方式,第一种是webapp,第二种是hybird app,第三种是native app。

而native-app就是安卓原生app,这里记录一下安卓原生开发的基本思路。

首先,安卓原生开发虽然在当今时代不是那么常见了,但由于其执行效率和更加强大的功能,所以还是有一定的市场。而且基于webapp的功能限制等原因,hybird app成为主流,但hybird app的开发还是离不开app的native。

从技术角度来说,不论是做游戏开发,web开发,app开发,亦或者其它开发等,基本上都是使用一些大厂或组织提供的sdk进行开发,这也是api工程师的由来,当然这里也有不要重复造轮子的原因。所以对大多数程序员来说,能够熟练使用各种sdk ,并且能够明白其中的运行原理,基本上已经属于技术大牛了。

无论是做什么开发,最重要的永远有两点,第一是功能,第二是用户体验------也就是所谓的交互。

web开发中分为前后端,后端处理主要逻辑,前端在完成功能的基础上,主要就是做好交互问题;而app开发中也是一样,所以学习app开发主要也是分为两部分,第一是功能,第二是交互。

所以,安卓sdk中提供了很多交互用的ui控件,比如显示框,按钮,输入框,进度条,图片等;而这些控件在页面上显示要有一定的布局格式,所以安卓也提供了好几种布局模板------layout。

下面是几种常见布局:

线性布局------LinearLayout

表格布局------TableLayout

相对布局------RelativeLayout

层布局------FrameLayout

在安卓中,页面主要由activity来控制,一个activity对应一个app页面,在activity中完成页面需要执行的逻辑,比如按钮的点击事件,获取输入控件的输入内容等。

而安卓页面的实现是通过xml文件来配置的,也就是说每个activity可以绑定一个页面配置的xml文件。

而在安卓中,这些与页面有关的所有东西都叫做资源,用实体R来表示。包括页面配置的xml文件,图片,按钮的高宽,控件的样式等都可以作为资源来使用。

当然,随着技术的发展,安卓官方提供了一种新的ui组件,jetpack compose,可以不使用xml文件来实现页面的布局。

所以,安卓开发同样适用于web开发中的三层模型,表现层------View,业务逻辑层------Service和数据访问层------DAO。在安卓开发中,业务逻辑主要也是在service中实现。

而app要完成复杂的业务功能,那么在官方提供的sdk的前提下,也可以引入一些第三方的sdk库,来完成需要的功能,比如需要使用地图,就可以调用百度地图,高德地图的sdk来实现。

最后,目前安卓开发中,其主要开发语言改为了kotlin,而不是之前的java,当然kotlin完全兼容了java语言,也可以继续使用java作为安卓的开发语言。

相关推荐
Mr YiRan7 小时前
网络请求API监控与网络切换埋点
android·网络
美狐美颜sdk10 小时前
直播APP开发技术栈详解:视频美颜SDK、人脸识别与实时渲染
android·人工智能·音视频·美颜sdk·直播美颜sdk
我要见SA姐112 小时前
用 Claude Code 重构遗留系统:从评估到落地的完整实践指南
数据库·ide·vscode·oracle·编辑器
奈斯先生Vector16 小时前
当模型版本不断变化,RelayRouter 能否帮助 AI 应用摆脱深度绑定
android·java·人工智能·开源·aigc
TimeFine16 小时前
让强模型做“总工”,让高性价比模型写代码
android
又见情义17 小时前
RK3568 Android 13 屏蔽 healthd 电池日志经验分享
android
00后程序员张18 小时前
Xcode vs KXApp,体积差几十G,选轻量方案还是完整工具链?
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
解道Jdon20 小时前
JDK 27发布:紧凑对象头、G1默认、量子安全TLS
ide·windows·git·svn·eclipse·github·visual studio
古法安卓20 小时前
Android-Fork 机制详解
android·java·android studio
JMchen21 小时前
第 12 篇|项目整合与打包发布 —— 从 Demo 到可安装 APK 的完整收官指南
kotlin·android studio