[Android]Android开发入门之HelloWorld

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介:

引言:在做Unity开发的时候,发现这么个问题,虽然Unity是跨平台的,能够进行Android,IOS,Web,PC等开发,但如果要实现一些稍微系统层的东西,还是需要通过通信,调用原系统的接口(自定义的接口)来进行开发的,所以这还是需要了解其他平台原生态的开发的,之前我Web,IOS开发有了一定了解,最近要实现一个移动平台的二维码扫描功能,由于IOS我在现有资源的情况下,不能进行真机调试,但Android平台开发我又不熟悉,所以感觉很是头疼,于是就下定决心还是要了解一下原生态的Android开发,求人不如靠己,求人只能是暂时的,再有耐心的人都经过不起你的反复的问,他人也有他人的工作!

学习一门新的技术,都是从HelloWorld开始!这个是众所周知的,输入HelloWorld也就是进入了该开发的大门!下面我就写一下学习心得!

之前我一直从事的是Visual Stdio软件下的开发,无论是cocos2dx还是.net,Unity3d,都离不开VS,感觉微软最成功的不仅仅是Windows操作系统,还有一个就是Visual Stdio集成开发环境,我之前一直没有触碰与java相关的开发方向,就是因为习惯使用了VS,并且已经爱上它了,就不习惯Eclipse开发环境,java开发的程序员或许也会有这感觉,习惯上了Eclipse开发环境也就独爱它一样。现在由于不得已还是要学学Android开发,所以还是渐渐习惯用Eclipse吧,Eclipse与其他两大集成开发环境(Xcode,VS2010)有明显不同的就是配置繁琐,不耐心的程序员,或许就已经卡在配置的路上了,但不管怎样,耐心、细心、责任心是程序员必备的素质!这里配置Android开发环境就不介绍了,自己Baidu。接下来就是从HelloWorld创建开始!

一、重要的调试工具adb的介绍


adb(android debug bridge)android调试桥

打开Android SDK目录,介绍一下重要的adb工具,内部tcp调试桥,会通过socket,模拟器来执行指定的操作
。adb这工具比较重要,我们常会用它来调试,我们可以添加在环境变量,配置操作:我的电脑->右击->属性->高级->环境变量


然后在cmd中就可以使用adb工具了

Center

adb基本操作
a)将本地文件拷贝到手机中
adb push [源文件] [目标文件]
adb push 1.txt /mnt/sdcard/1.txt
b)将手机文件拷贝到本地
adb pull [源文件] [本地]
adb pull /data/app/Apidemos.apk C:\demo.apk
c)杀死某一进程
adb kill start-server
d)将桌面某一应用(apk)安装到手机模拟器上
adb install demo.apk
e)卸载某一应用
adb uninstall 包名(进程名)
adb uninstall com.example.android.apis
其实豌豆荚 QQ手机关机 91手机助手这些应用程序就是将这些命令封装了一下,然后执行了相应操作
f)查看adb的版本
adb version (许多莫名其妙的问题就是可能因为adb的版本原因导致的)
g)查看当前所有连接上来的设备信息
adb devices(如果是真机连接上,也会显示真机的名字)
h)来到模拟器或者真机的控制台
adb shell
Android手机其实是Linux操作系统的控制台
ls查看目录信息
ps就可以查看当前正在运行的进程信息
kill就可以杀死某一进程
#kill 127(pid进程号)
这些都是linux的命令了,就不详细介绍了!
ctrl+f11切换屏幕横竖屏

二、HelloWorld开发

1.基本创建

File->New->Android Application Project

Center

生成的目录

Center

2.生成的目录解析

project.properties 文件夹
指定开发使用的android.jar的版本
android-17  Android 4.2.2
android-8   Android 2.2

API级别与NDK的对应关系如下:

Code name Version API level
(no code name) 1.0 API level 1
(no code name) 1.1 API level 2
Cupcake 1.5 API level 3, NDK 1
Donut 1.6 API level 4, NDK 2
Eclair 2.0 API level 5
Eclair 2.0.1 API level 6
Eclair 2.1 API level 7, NDK 3
Froyo 2.2.x API level 8, NDK 4
Gingerbread 2.3 - 2.3.2 API level 9, NDK 5
Gingerbread 2.3.3 - 2.3.7 API level 10
Honeycomb 3.0 API level 11
Honeycomb 3.1 API level 12, NDK 6
Honeycomb 3.2.x API level 13
IceCreamSandwich 4.0.1 - 4.0.2 API level 14, NDK 7
IceCreamSandwich 4.0.3 API level 15


AndroidManifest.xml
将我们应用到的信息给注册到Android系统上,相当于注册表
注册了包名、版本号
<activity>节点是我们应用程序的主界面
修改图标,添加节点信息
在res文件加下新建drawable文件夹作为存放图片的文件夹,放一个5.png的图标
android:icon = "@drawable/5"

Center

res文件夹
values文件夹下面的strings.xml是配置app的名字已经启动文本,这里修改一下app的名字
layout文件夹下的activity_main.xml是界面布局的文件,点击GraphicalLayout就是界面的预览,

Center

点击activity_main.xml修改文本信息,改成“Android开发,我要征服你”

Center
所有res文件下的资源配置信息,我们在gen目录包下面都会有一个R.java,这个是由aadt工具自动生成的,都是以一个int类型的引用形式存在的,我们在res/values/strings.xml下添加一个节点<string name= "myname">丁小未</string>

Center

然后去看R文件,会发现自动生成了一个
public static final int myname=0x7f050003;与之对应的引用

Center
R文件的作用:为了方便程序中重复的使用定义的资源文件,做到程序跟资源相分离,然后我们来解释一下之前写的android:icon="@drawable/5",这样写的道理
@代表R文件,drawable就是代表R类的内部类,5是指内部类里面的5所指向的地址的图标
总而言之就是res资源文件R文件都会自动生成一个int类型的节点信息来同意管理资源

最后介绍最关键的src(源码文件夹)/MainActivity文件,Android开发每一个Activity都是对应这一个与之对应的界面
类比:做jsp开发的时候,.jsp文件都是对应着一个用户可以见到的网页;.net开发中,.aspx文件也是用户可以见到的动态网页,这里采用了MVC的这种模式,是采用这种Activity类来实现用户可见的界面
双击MainActivity.java文件,看到onCreate方法,是在应用第一次启动的时候执行的方法,其中有这么一段代码
setContentView(R.layout.activity_main);这就是设置activity的布局,我们可以自定义布局,拖动一些控件到activity上

Center

布局的就是R文件下layout节点下activity_main的资源,对应于res/layout/activity_main.xml文件,Android开发最重要的就是这个R文件

常见错误:
1.例如如果注册表文件 AndroidManifest.xml中android:name写错了,系统启动的时候会报一个加载出错,因为系统在启动的时候首先就是去访问该注册表的文件,
由于清单文件配置出错,系统找不到与之对应的activity
2.AndroidManifest.xml中
<intent-filter>
       <action android:name="android.intent.action.MAIN" />
       <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
这段配置文件的作用:在luncher程序里面生成一个应用程序的图标,如果我们删了,重新启动,log日志会显示安装成功HelloWorlddown,但我们点击应用图标却会提示我们没有安装应用程序!

更多精彩教程请关注我的微博














本文转蓬莱仙羽 51CTO博客,原文链接:http://blog.51cto.com/dingxiaowei/1392470,如需转载请自行联系原作者


相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
26天前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台策略
在移动应用开发的战场上,安卓和iOS两大阵营各据一方。随着技术的演进,跨平台开发框架成为开发者的新宠,旨在实现一次编码、多平台部署的梦想。本文将探讨跨平台开发的优势与挑战,并分享实用的开发技巧,帮助开发者在安卓和iOS的世界中游刃有余。
|
28天前
|
缓存 前端开发 Android开发
安卓开发中的自定义视图:从零到英雄
【10月更文挑战第42天】 在安卓的世界里,自定义视图是一块画布,让开发者能够绘制出独一无二的界面体验。本文将带你走进自定义视图的大门,通过深入浅出的方式,让你从零基础到能够独立设计并实现复杂的自定义组件。我们将探索自定义视图的核心概念、实现步骤,以及如何优化你的视图以提高性能和兼容性。准备好了吗?让我们开始这段创造性的旅程吧!
23 1
|
13天前
|
搜索推荐 前端开发 API
探索安卓开发中的自定义视图:打造个性化用户界面
在安卓应用开发的广阔天地中,自定义视图是一块神奇的画布,让开发者能够突破标准控件的限制,绘制出独一无二的用户界面。本文将带你走进自定义视图的世界,从基础概念到实战技巧,逐步揭示如何在安卓平台上创建和运用自定义视图来提升用户体验。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开新的视野,让你的应用在众多同质化产品中脱颖而出。
39 19
|
26天前
|
IDE Java 开发工具
移动应用与系统:探索Android开发之旅
在这篇文章中,我们将深入探讨Android开发的各个方面,从基础知识到高级技术。我们将通过代码示例和案例分析,帮助读者更好地理解和掌握Android开发。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和技巧。让我们一起开启Android开发的旅程吧!
|
13天前
|
JSON Java API
探索安卓开发:打造你的首个天气应用
在这篇技术指南中,我们将一起潜入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。通过这个实践项目,你将掌握安卓开发的核心概念、界面设计、网络编程以及数据解析等技能。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供一个清晰的路线图和实用的代码示例,帮助你在安卓开发的道路上迈出坚实的一步。让我们一起开始这段旅程,打造属于你自己的第一个安卓应用吧!
38 14
|
16天前
|
Java Linux 数据库
探索安卓开发:打造你的第一款应用
在数字时代的浪潮中,每个人都有机会成为创意的实现者。本文将带你走进安卓开发的奇妙世界,通过浅显易懂的语言和实际代码示例,引导你从零开始构建自己的第一款安卓应用。无论你是编程新手还是希望拓展技术的开发者,这篇文章都将为你打开一扇门,让你的创意和技术一起飞扬。
|
14天前
|
XML 存储 Java
探索安卓开发之旅:从新手到专家
在数字时代,掌握安卓应用开发技能是进入IT行业的关键。本文将引导读者从零基础开始,逐步深入安卓开发的世界,通过实际案例和代码示例,展示如何构建自己的第一个安卓应用。我们将探讨基本概念、开发工具设置、用户界面设计、数据处理以及发布应用的全过程。无论你是编程新手还是有一定基础的开发者,这篇文章都将为你提供宝贵的知识和技能,帮助你在安卓开发的道路上迈出坚实的步伐。
27 5
|
13天前
|
开发框架 Android开发 iOS开发
安卓与iOS开发中的跨平台策略:一次编码,多平台部署
在移动应用开发的广阔天地中,安卓和iOS两大阵营各占一方。随着技术的发展,跨平台开发框架应运而生,它们承诺着“一次编码,到处运行”的便捷。本文将深入探讨跨平台开发的现状、挑战以及未来趋势,同时通过代码示例揭示跨平台工具的实际运用。
|
14天前
|
XML 搜索推荐 前端开发
安卓开发中的自定义视图:打造个性化UI组件
在安卓应用开发中,自定义视图是一种强大的工具,它允许开发者创造独一无二的用户界面元素,从而提升应用的外观和用户体验。本文将通过一个简单的自定义视图示例,引导你了解如何在安卓项目中实现自定义组件,并探讨其背后的技术原理。我们将从基础的View类讲起,逐步深入到绘图、事件处理以及性能优化等方面。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。
|
14天前
|
搜索推荐 前端开发 测试技术
打造个性化安卓应用:从设计到开发的全面指南
在这个数字时代,拥有一个定制的移动应用不仅是一种趋势,更是个人或企业品牌的重要延伸。本文将引导你通过一系列简单易懂的步骤,从构思你的应用理念开始,直至实现一个功能齐全的安卓应用。无论你是编程新手还是希望拓展技能的开发者,这篇文章都将为你提供必要的工具和知识,帮助你将创意转化为现实。