0.初衷
目前负责Web端及移动端的测试工作,由于不了解Android&iOS的开发机制,导致测试过程中出现了很多盲区,以及有时和开发沟通,对于出现的专业名称无法理解,增加了沟通成本。 为了解决这一现象,也为了自身的提升,准备进行简单的Android&iOS的项目搭建,了解Android&iOS的开发机制及一些专业术语。
1.Android简介
1.1什么是Android
安卓(Android)是一种基于Linux的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。
1.2Android的重要时间点
2003年10月,Andy Rubin等人创建Android公司,并组建Android团队。2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。2007年11月5日,Google与84家硬件制造商、软件开发商及电信营运商组建了开放手机联盟,共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统最早的版本。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2014第一季度Android平台已占所有移动广告流量来源的42.8%,首度超越iOS。
2.Android项目简介
2.1Android项目结构
MyApplicationDemo.iml:编辑器的配置文件app:一个模块(Modlue),类似于Eclipse中的项目命令gradle:当前项目的配置文件gradle.properties:gradle这个编辑工具的配置文件gradlew:对gradle的一个Unix系统包装gradle.bat:对gradle命令的一个Windows系统包装local.properties:本地的配置文件settings.gradle:当前项目的设置文件 app.iml:模块配置文件build:这个模块编译相关的文件build.gradle:这个模块的编译配置文件libs:依赖相关,jarproguard-rules.pro:混淆文件androidTest:Android测试Java源码main:源码,配置和资源文件res:包括图片,声音,视频等资源mdpi:表示手机的分辨率AndroidManifest.xml:清单文件,用来配置当前这个项目的一些信息test:java测试代码
2.2Activity
2.2.1什么是Activity
简单来说,在Android中,没看到的一个界面通常就是一个Activity,应用可以没有Activity。
ps:Activity可以做成透明效果,也可以做成对话框效果。
2.2.2Activity的一般结构
从逻辑层面来讲,Activity又一个Java类(截图中:MainActivity.java)和一个布局(截图中:activity_main.xml)组成。
Java类:用例描述逻辑
布局:用来描述样式和位置
3.简单运用
3.1TextView
<TextView
android:id="@+id/tv_welcome" //给TextView设置id,用于Java类中findViewById(R.id.tv_welcome)
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MyApplicationDemo"//显示文案
android:textSize="30sp"
/>
每个控件都有两个必填属性,宽和高 值可以为:
wrap_content,表示里面的内容多大控件就多大;match_parent,表示父容器多大控件就多大;具体精确值:20px、20dp等;
3.2Button
<Button
android:id="@+id/bt_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="登录"
android:textSize="20sp" />
3.3查找控件
//通过id找到控件
TextView tv_welcome = findViewById(R.id.tv_welcome);
tv_welcome.setText("Welcome"); //最终运行结果TextView显示为Welcome,而不是MyApplicationDemo,xml为模板
3.4设置监听器
//设置点击监听器
bt_login.setOnClickListener(new View.OnClickListener()
{
@Override
//点击按钮后,他就会执行这个方法
public void onClick(View view) {
//显示一个提示,就是Android特有的吐司
Toast.makeText(MainActivity.this, "点击成功", Toast.LENGTH_SHORT).show();
//跳转至HomeActivity
//Intent可以理解为一个意图
Intent intent = new Intent(MainActivity.this, HomeActivity.class);
startActivity(intent);
}
});
3.5关闭一个Activity
activity_home.xml
<Button
android:id="@+id/bt_back"
android:text="返回"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
HomeActivity.java
public class HomeActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
Button bt_back = findViewById(R.id.bt_back);
bt_back.setOnClickListener(this);
}
@Override
public void onClick(View view) {
finish(); //关闭Activity
}
}
3.6Demo运行结果
3.7启动页设置
AndroidManifest.xml
<!-- 这里就是activity-->
<activity android:name=".activity.HomeActivity">
</activity>
<activity android:name=".MainActivity">
<!-- 默认启动界面,固定写法-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
4.总结
Android入门(一)主要总结了Android的发展历程,Android项目的结构及一些简单的运用。 在创建Activity时,AndroidStudio提供了很多便利。为了更加好的理解Activity,大家可以尝试下手动创建Java类、xml文件及配置AndroidManifest.xml。 第一篇就先到这里吧,一起加油~