安卓移动应用开发基础教程_android 移动应用开发基础案例教程 - CSDN
精华内容
参与话题
  • Android开发课程-功底Java

    万人学习 2020-07-21 20:11:03
    本套课程是一套全面、细致、深入的Java开发教程,课程共计19个章节,从基础语法、面向对象到设计模式、算法、网络编程、多线程、IO、集合框架、反射、泛型、正则表达式、常用工具类等内容进行了深入细致的讲解。
  • 由传智播客高教产品研发部编著的《Android移动应用基础教程》为Android入门书籍,本书站在初学者的角度,将每个讲解的知识都进行了深入分析,并使用生动形象的情景化举例,将复杂和难以理解的知识进行简单化。...
  • 由传智播客高教产品研发部编著的《Android移动应用基础教程》为Android入门书籍,本书站在初学者的角度,将每个讲解的知识都进行了深入分析,并使用生动形象的情景化举例,将复杂和难以理解的知识进行简单化。...
  • 第一章 基础入门 一、通信技术 1G 模拟制式手机(无线电台) 2G GSM、CDMA数字手机 拨号上网 3G 移动通信手机 宽带上网 4G 移动电话通信(TD-LTE和FDD-LTE)(3G+wlan) 光纤到户 *带宽 Mbps 二、Dalvik虚拟机及...

    第一章 基础入门

    一、通信技术

    • 1G 模拟制式手机(无线电台)
    • 2G GSM、CDMA数字手机 拨号上网
    • 3G 移动通信手机 宽带上网
    • 4G 移动电话通信(TD-LTE和FDD-LTE)(3G wlan) 光纤到户

    *带宽 Mbps

    二、Dalvik虚拟机及Android起源

    1、Android操作系统(以Linux系统,开源)面向 智能手机 开法

    在这里插入图片描述

    习题:Android 4.0是(ice cream sandwich)
    不属于ddms工具用途是(查看所有安装的插件)
    

    在这里插入图片描述

    2、Dalvik虚拟机:

    在这里插入图片描述

    3、Apk文件的dex作用:将class相同内容提取出来,提高运行速度

    4、ART模式(Android Runtime):运行速度比dalvik Java的虚拟机快

    习题:Dalvik虚拟机时基于(寄存器) 的架构
    

    三、ADT Bundle

    developer Android.com

    1、SDK(标准工具开发集)

    • eclipse

    • adt : Android develop tools插件

    • 其他工具

    2、ADT Bundle三个重要组成部分:Eclipse,SDK,SDK manager.exe

    3、sdk目录结构

    • add-ons 额外功能附属文件
    • docs开发文档
    • extras usb驱动,如摄像头的驱动
    • platforms Android系统的版本
    • platform-tools 平台的工具(开发调试桥)
    • samples范例代码
    • sources 源码 !!!
    • system-images系统镜像
    • tools开发工具
    习题:不属于ADT Bundle三个重要组成部分的是(ADB)
    

    四、Android调试桥

    1、Android应用开发的步骤

    • 创建工程
    • 编写布局文件
    • 编写java代码

    2、adb

    • 安卓调试桥:把pc和Android手机建立一个联系
    - adb push 把pc电脑的东西放入到手机
    
    例如:adb push bobo.txt  /sdcard/bobo.txt
    
    - adb pull 把手机的东西拉到电脑上
    
    例如:adb pull /sdcard/bobo.txt   bobo.txt  
    
    - adb shell  来到手机的命令行终端,用linux命令
    - adb install XXX.apk  安装电脑上的一个apk到电脑上
    - adb  uninstall  cn.itvast.XXX  卸载
    - adb  kill-server  杀死adb的服务
    - adb   start-server  启动adb的服务
    
    占用电脑的5037端口,如果别的软件占用需删除
    
    netstat-ano  查看端口
    

    3、开发如何 使用真机

    • usb线连接

    • 安装驱动(驱动精灵)

      习题:ADB的常见指令中,用于卸载应用程序的是(adb uninstall)

    五、DDMS

    1、DDMS

    • File Explorer 文件列表

    • Emulator Control 仿真控制

    • System Information 显示cpu负载

      习题(!做错需注意!):下列不属于DDMS工具用途的是(查看所有的插件)

    六、hello world

    hello程序开发步骤
    
    - 打开eclipse——window——perferences——Android——browse(SDK)
    - 点击Android Virtual Device Manager——new
    - 新建Android Application Project——res中的values——string.xml即可修改
    
      习题:
        *创建程序时,填写的Compile With(编译)是
        (程序将使用哪个版本的SDK进行编译)
        *创建程序时,填写的Theme(主题)是
        (程序UI所使用的主题)
    

    七、Android程序结构

    在这里插入图片描述

     习题:
    
    *Android 工程中( proguard-project.txt )是混淆代码工具proguard的配置文件*
    
    *Android安装包文件简称APK,其后缀名是(apk)
    
    *Android 工程中存放各种程序资源的目录是(res)
    

    注:AndroidManifes.xml

    八、Android程序打包

    在这里插入图片描述

    展开全文
  • android移动应用开发基础教程PPT,适合教育工作者,上课用。当然,想进行android入门的童鞋也可以下载来看看,适合初学者。
  • 文件中包含《Android移动应用开发案例教程》一书中项目源代码,供初学者参考。
  • 资源名称:Android 移动应用基础教程内容简介:由传智播客高教产品研发部编著的《Android移动应用基础教程》为Android入门书籍,本书站在初学者的角度,将每个讲解的知识都进行了深入分析,并使用生动形象的情景化...
  • ANDROID移动开发基础案例教程,黑马程序员。人民邮电出版社。本书从初学者的角度出发,采用案例驱动式教学方法,对Android基础知识进行讲解。在案例设计上力求贴合实际需求,真正做到把书本上的知识应用到实际开发中...
  • android移动开发基础教程,适合初学着使用 本书共10章,第1-2章主要讲解Android的基础知识,包括Android起源、Android体系结构、开发环境搭建、UI布局等。第3-8章主要讲解Android中的数据存储以及四大组件,包括文件...
  • android移动应用基础教程》—习题答案.docx
  • Android移动开发基础案例教程课件PPT,很好的入门PPT,适合初学者
  • 本科学习安卓的时候遇到了很多问题,教材比较过时,所以选择了这个教材,看着PPT学习,比较有帮助,有PPT,有练习!!!android 移动开发基础案列教程-黑马程序员
  • 黑马《Android移动开发基础案例教程》-教学设计,质量比较高,上课用很合适
  • 参考书目:《Android移动开发基础案例教程》 出版社:中国工信出版集团丨人民邮电出版社 编著:黑马程序员 --------------- 很认真写的期末考试总结,供大家参考! · 移动通信1G、2G、3G、4G的概念、优缺点...

     

    参考书目:《Android移动开发基础案例教程》 

    出版社:中国工信出版集团丨人民邮电出版社

    编著:黑马程序员

    ---------------

    很认真写的期末考试总结,供大家参考!

     

    · 移动通信1G、2G、3G、4G的概念、优缺点

    答:1G是模拟信号,支持语音通话,安全性差,容易被窃听,代表产品:大哥大;2G采用数字信号传输,信号强,支持收发短信,支持小的Java程序,支持数据业务,GPRS工作在2.5GHz,EDGE工作在2.75GHz;3G主要技术有TDSCDMA(中国移动)、WCDMA(中国联通)和CDMA2000(中国电信),HSDPA工作在3.5GHz,提供较快的数据业务;4G是指第四代移动通信技术,主要技术有TD-LTE(中国移动、中国联通、中国电信)和FDD-LTE(中国联通、中国电信),提供更快的数据业务,通过VoLTE技术,支持语音通话在4G频段上进行,提供高清视频、语音通话。

    · Android体系结构由几层构成?分别是哪几层?简单介绍每一层的概念、应用

    答:四层,分别是应用程序层(Applications)、应用程序框架层(Application Framework)、核心类库层(Libraries)以及Linux内核层(Linux Kernel)。应用程序层是应用程序的集合,各种安装在手机上的App都属于这一层;应用程序框架层主要提供了/构建应用程序时/用到的各种API接口,Android自带的一些核心应用就是使用这些API完成的,例如视图(View)、活动管理器(Activity Manager)、通知管理器(Notification Manager)等;核心类库层包含了系统库/及Android运行时库,系统库主要是通过C/C++库来为Android系统提供主要的特性支持,如OpenGL/ES库提供了3D绘图的支持,Android运行时库提供了Dalvik虚拟机(安卓5.0开始彻底更换为ART);Linux内核层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动等。

    · Drawable、Layout、AndroidManifest.xml分别存放什么内容?

    答:src目录是源代码目录,存放的是.java文件;gen目录存放ADT自动生成的java文件;bin目录保存了编译过程中产生的文件,以及最终的apk文件;res是资源目录,其中,drawable目录用来保存同一个程序中针对不同屏幕尺寸需要显示的不同大小的图像文件,layout目录用来保存与用户界面相关的布局文件,values目录保存颜色、风格、主题和字符串等资源;project.properties文件记录了Android工程的相关设置;AndroidManifest.xml是XML格式的Android程序声明文件,包含了Android系统运行Android程序前所必须掌握的重要信息,这些信息包括应用程序名称、icon、包名称、模块组成、授权和SDK最低版本等,而且每个Android程序必须在根目录下包含一个AndroidManifest.xml文件。

    · Android的常用布局有几种?分别简单介绍它们的特点

    答:分别有LinearLayout(线性布局)、RelativeLayout(相对布局)、FrameLayout(帧/框架布局)、TableLayout(表格布局)、GridLayout(网格布局)和AbsoluteLayout(绝对布局)六种。线性布局(LinearLayout)主要以水平和垂直方式来显示界面中的控件;相对布局(RelativeLayout)是通过相对定位的方式指定控件位置,后放置的控件依赖于先放置的控件,是Android默认的布局;帧布局(FrameLayout)是Android中最简单的布局,该布局为每个加入其中的控件创建一个空白区域,所有控件都默认显示在屏幕左上角,并按照先后放入的次序重叠排放,先放入的控件显示在最底层,后放入的控件显示在最顶层;表格布局(TableLayout)是以表格形式排列控件的,通过行和列将界面划分为多个单元格,每个单元格都可以添加控件;网格布局(GridLayout)是Android 4.0新支持的布局方式,将用户界面划分为网格,界面元素可随意摆放在这些网格中;绝对布局(AbsoluteLayout)是通过指定x、y坐标来控制每一个控件位置的。

    · TextView和Button的常用属性有哪些?

     

    控件属性

    功能描述

    TextView

    android:text

    设置显示文本

    android:textColor

    设置文本的颜色

    android:textSize

    设置文字大小,推荐单位为sp,如android:textSize = “15sp”

    android:textStyle

    设置文字样式,如bold(粗体),italic(斜体),bolditalic(粗斜体)

    android:height

    设置文本区域的高度,推荐单位为dp

    android:width

    设置文本区域的宽度,推荐单位为dp

    android:maxLength

    设置文本长度,超出不显示,如android:maxLength = “10”

    android:password

    设置文本以密码形式“.”显示

    android:gravity

    设置文本位置,如设置成”center”,文本将居中显示

    android:phoneNumber

    设置以电话号码的方式输入

    android:layout_height

    设置TextView控件的高度

    android:layout_width

    设置TextView控件的宽度

     

    控件属性

    功能描述

    Button

    android:text

    设置显示文本

    android:layout_height

    设置Button控件的高度

    android:layout_width

    设置Button控件的宽度

    android:layout_weight

    设置Button控件的权重

    android:onClick

    点击此控件时调用的方法

    android:drawable

    在Button组件上放置图片

    · Android的四大组件是什么?它们的作用分别是什么?

    答:Activity(界面)为用户提供可视化界面及操作;Service(服务)是一个长期运行在后台的用户组件,适用于开发没有用户界面且长时间在后台运行的应用功能;Content Provider(数据交换/内容提供者)是在不同程序之间实现数据共享;Broadcast Receiver(广播/广播接收者)是监听系统中的广播消息,以实现在不同组件之间的通信。

    · Activity的生命周期有几种状态?有几种方法?什么时候调用这些方法?作用是什么?

    答:Activity的生命周期分为5种状态,分别是启动状态、运行状态、暂停状态、停止状态和销毁状态。启动状态很短暂,一般当Activity启动之后便会进入运行状态;运行状态时Activity处于屏幕最前端,它是可见、有焦点的,可以与用户进行交互;暂停状态是当Activity在界面上被部分遮挡,且不能与用户进行交互,如锁屏;停止状态是当Activity在界面上被完全遮挡,完全不能被用户看到,当系统内存不足时,很容易被销毁;销毁状态时Activity将被kill,清理出内存。

    Activity的生命周期中主要涉及7种方法(事件回调函数),分别是onCreate()、onStart()、onResume、onPause()、onStop()、onDestroy()和onRestart()方法/函数。onCreate()方法是在Activity创建时调用,通常做一些初始化设置;onStart()方法在Activity即将可见时调用;onResume()方法在Activity可以接收用户输入时调用,此时的Activity位于Activity栈的栈顶;onPause()方法在进入暂停状态时被调用,主要用来保存持久数据、关闭动画、释放CPU资源等;onStop()方法在Activity不对用户可见时调用,Activity进入停止状态;onDestroy()方法在Activity销毁时调用;onRestart()方法在Activity从停止状态进入活动状态前调用。

    · Activity之间的跳转需要用到(       )组件,根据开启目标组件的方式不同,Intent被分为哪两种类型?简单介绍这两种类型

    答:Activity之间的跳转需要用到Intent组件,Intent是一种轻量级的消息传递机制,可以在同一个应用程序内部的不同组件之间传递信息,根据开启目标组件的方式不同,Intent被分为显式启动(意图)和隐式启动(意图)两种类型,显式启动可以通过名称开启指定的目标组件;隐式启动不需要指明需要启动哪一个Activity,而是通过指定action和category等属性信息,由Android系统来决定。

    · 对于Android平台提供的5种数据存储方式,简单介绍它们

    文件存储

    分为内部存储和外部存储,直接使用Android文件系统存储数据,可以存储体积较大的数据;

     

    SharePreferences

    它是Android提供的用来存储一些简单的配置信息的一种机制,采用了.xml格式将数据存储到设备中,可以存储应用程序的各种配置信息,如用户名、密码等;

     

    ContentProvider

    主要用于应用程序之间的数据交换,它可以将自己的数据共享给其他应用程序使用;

     

    SQLite数据库

    Android自带的一个轻量级数据库,支持基本SQL语法,利用很少的内存就有很好的性能,一般使用它作为复杂数据的存储引擎,可以存储用户信息等;

     

    网络存储

    将数据存储到服务器上,通过网络提供的存储空间来存储、获取数据信息。

     

     

    · 【程序改错题、程序填空题】

    package com.example.saveqq;  
      
    import java.util.HashMap;  
    import java.util.Map;  
      
    import android.content.Context;  
    import android.content.SharedPreferences;  
      
    public class SPSaveQQ{  
        // 保存QQ账号和登录密码到data.xml文件中  
        public static boolean saveUserInfo(Context context, String number, String password) {  
            SharedPreferences sp = context.getSharedPreferences("data", Context.MODE_PRIVATE);  
            SharedPreferences.Editor edit = sp.edit();  
            edit.putString("userName", number);  
            edit.putString("pwd", password);  
            edit.commit();  
            return true;  
        }  
        //从data.xml文件中获取存储的QQ账号和密码  
        public static Map<String, String> getUserInfo(Context context) {  
            SharedPreferences sp = context.getSharedPreferences("data", Context.MODE_PRIVATE);  
            String number = sp.getString("userName", null);  
            String password = sp.getString("pwd", null);  
            Map<String, String> userMap = new HashMap<String, String>();  
            userMap.put("number", number);  
            userMap.put("password", password);  
            return userMap;  
        }  
    }  

     

    · 服务的启动方式有几种?分别是哪几种?

    答:两种。分别是startService方式启动和bindService方式启动,通过startService()方法启动服务,服务会长期在后台运行,并且服务的状态与开启者的状态没有关系,即使启动服务的组件已经被销毁,服务也会依旧运行;当一个组件通过bindService()启动服务时,服务会与组件绑定,一个被绑定的服务提供一个客户端与服务器接口,允许组件与服务交互、发送请求、得到结果,多个组件可以绑定一个服务,当调用onUnbind()方法时,这个服务就会被销毁。

    · 【程序改错题、程序填空题】

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
        xmlns:tools="http://schemas.android.com/tools"  
        android:layout_width="match_parent"  
        android:layout_height="match_parent"  
        android:background="@drawable/bg"  
        android:orientation="vertical">  
      
        <EditText  
            android:id="@+id/et_inputpath"  
            android:layout_width="match_parent"  
            android:layout_height="wrap_content"  
            android:text="data/data/com.example.musicplayer/a.mp3" />  
        <LinearLayout  
            android:layout_width="match_parent"  
            android:layout_height="wrap_content"  
            android:layout_marginTop="10dp"  
            android:layout_gravity="center_horizontal"  
            android:gravity="center"  
            android:orientation="horizontal" >  
            <TextView  
                 android:id="@+id/tv_play"  
                 android:layout_width="0dp"  
                 android:layout_height="wrap_content"  
                 android:layout_weight="1"  
                 android:drawablePadding="3dp"  
                 android:drawableTop="@drawable/play"  
                 android:gravity="center"  
                 android:text="播放" />  
            <TextView  
                 android:id="@+id/tv_pause"  
                 android:layout_width="0dp"  
                 android:layout_height="wrap_content"  
                 android:layout_weight="1"  
                 android:drawablePadding="3dp"  
                 android:drawableTop="@drawable/pause"  
                 android:gravity="center"  
                 android:text="暂停" />  
        </LinearLayout>  
    </LinearLayout>  

    · 【程序改错题、程序填空题】

    package com.example.readsms;  
      
    import java.util.ArrayList;  
    import java.util.List;  
      
    import android.app.Activity;  
    import android.content.ContentResolver;  
    import android.database.Cursor;  
    import android.net.Uri;  
    import android.os.Bundle;  
    import android.view.View;  
    import android.widget.TextView;  
      
    public class MainActivity extends Activity {  
        private TextView tvSms;  
        private TextView tvDes;  
        private String text = "";  
        @Override  
        protected void onCreate(Bundle savedInstanceState) {  
            // TODO Auto-generated method stub  
            super.onCreate(savedInstanceState);  
            setContentView(R.layout.activity_main);  
            tvSms = (TextView) findViewById(R.id.tv_sms);  
            tvDes = (TextView) findViewById(R.id.tv_des);  
        }  
        public void readSMS(View view) {  
            Uri uri = Uri.parse("content://sms/");  
            ContentResolver resolver = getContentResolver();  
            Cursor cursor = resolver.query(uri, new String[]{ "_id", "address",   
                    "type", "body","date"}, null, null, null);  
            List<SmsInfo> smsInfos = new ArrayList<SmsInfo>();  
            if(cursor != null && cursor.getCount() >0 ) {  
                tvDes.setVisibility(View.VISIBLE);  
                while(cursor.moveToNext()) {  
                    int _id = cursor.getInt(0);  
                    String address = cursor.getString(1);  
                    int type = cursor.getInt(2);  
                    String body = cursor.getString(1);  
                    long date = cursor.getLong(4);  
                    SmsInfo smsInfo = new SmsInfo(_id, address, type, body, date);  
                    smsInfos.add(smsInfo);  
                }  
                cursor.close();  
            }  
            for (int i = 0;i < smsInfos.size(); i++) {  
                text += "手机号码:" + smsInfos.get(i).getAddress() + "\n";  
                text += "短信内容:" + smsInfos.get(i).getBody() + "\n\n";  
                tvSms.setText(text);  
            }  
        }  
          
    }  

    · 【程序改错题、程序填空题】

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
       xmlns:tools="http://schemas.android.com/tools"  
        android:layout_width="match_parent"  
        android:layout_height="match_parent"  
        android:background="@android:color/white"  
        tools:context=".MainActivity">  
        <ImageView  
            android:id="@+id/iv_flower"  
            android:layout_width="150dp"  
            android:layout_height="267dp"  
            android:layout_centerInParent="true"  
            android:background="@layout/frame"  
            android:layout_marginBottom="20dp" />  
        <Button  
            android:id="@+id/btn_play"  
            android:layout_width="70dp"  
            android:layout_height="70dp"  
            android:layout_centerInParent="true"  
            android:background="@android:drawable/ic_media_play"/>  
    </RelativeLayout>  

    · 【程序改错题、程序填空题】

    package com.example.frame;  
      
    import android.app.Activity;  
    import android.graphics.drawable.AnimationDrawable;  
    import android.os.Bundle;  
    import android.view.View;  
    import android.widget.Button;  
    import android.widget.ImageView;  
      
    public class MainActivity extends Activity implements View.OnClickListener{  
        private ImageView iv_flower;  
        private Button btn_start;  
        private AnimationDrawable animation;   
        @Override  
        protected void onCreate(Bundle savedInstanceState) {  
            super.onCreate(savedInstanceState);  
            setContentView(R.layout.activity_main);  
            iv_flower = (ImageView) findViewById(R.id.iv_flower);  
            btn_start = (Button) findViewById(R.id.btn_play);  
            btn_start.setOnClickListener(this);  
            //拿到AnimationDrawable对象  
             animation = (AnimationDrawable)iv_flower.getBackground();         
        }  
      
        public void onClick(View v) {  
            //播放动画  
            if(!animation.isRunning()){  
                animation.start();  
                btn_start.setBackgroundResource(android.R.drawable.ic_media_pause);  
            }else{  
                animation.stop();  
                btn_start.setBackgroundResource(android.R.drawable.ic_media_play);  
            }  
        }  
    }  

    · 【程序改错题、程序填空题】

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
        xmlns:tools="http://schemas.android.com/tools"  
        android:layout_width="match_parent"  
        android:layout_height="match_parent"  
        android:orientation="vertical"  
        tools:context=".MainActivity" >  
      
        <RelativeLayout  
            android:layout_width="match_parent"  
            android:layout_height="wrap_content" >  
      
            <EditText  
                android:id="@+id/et_path"  
                android:layout_width="match_parent"  
                android:layout_height="wrap_content"  
                android:hint="请输入视频文件的路径"  
                android:layout_toLeftOf="@+id/bt_play" />  
      
            <ImageView  
                android:id="@+id/bt_play"  
                android:layout_width="wrap_content"  
                android:layout_height="wrap_content"  
                android:layout_alignParentRight="true"  
                android:layout_centerVertical="true"  
                android:src="@android:drawable/ic_media_play" />  
        </RelativeLayout>  
      
        <LinearLayout  
            android:layout_width="wrap_content"  
            android:layout_height="match_parent"  
            android:layout_below="@+id/play" >  
      
            <VideoView  
                android:id="@+id/video_view"  
                android:layout_width="match_parent"  
                android:layout_height="match_parent" />  
        </LinearLayout>  
      
    </LinearLayout>  

    · 【程序改错题、程序填空题】

    package com.example.videoview;  
      
    import android.app.Activity;  
    import android.media.MediaPlayer;  
    import android.os.Bundle;  
    import android.view.View;  
    import android.widget.EditText;  
    import android.widget.ImageView;  
    import android.widget.MediaController;  
    import android.widget.VideoView;  
    public class MainActivity extends Activity implements View.OnClickListener {  
        private EditText et_path;  
        private ImageView bt_play;  
        private VideoView videoView;  
        private MediaController controller;  
        @Override  
        protected void onCreate(Bundle savedInstanceState) {  
            super.onCreate(savedInstanceState);  
            setContentView(R.layout.activity_main);  
            et_path = (EditText) findViewById(R.id.et_path);  
            bt_play = (ImageView) findViewById(R.id.bt_play);  
            videoView = (VideoView) findViewById(R.id.video_view);  
            controller = new MediaController(this);  
            videoView.setMediaController(controller);  
            bt_play.setOnClickListener(this);  
        }  
        @Override  
        public void onClick(View v) {  
            switch (v.getId()) {  
            case R.id.bt_play:  
                play();  
                break;  
            }  
        }  
        private void play() {  
            if (videoView != null && videoView.isPlaying()) {  
                bt_play.setImageResource(android.R.drawable.ic_media_play);  
                videoView.stopPlayback();  
                return;  
            }  
            videoView.setVideoPath(et_path.getText().toString());  
            videoView.start();  
            bt_play.setImageResource(android.R.drawable.ic_media_pause);  
            videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {  
                @Override  
                public void onCompletion(MediaPlayer mp) {  
                    // TODO Auto-generated method stub  
                    bt_play.setImageResource(android.R.drawable.ic_media_play);  
                }  
            });  
        }  
    }  

     

    END.

    展开全文
  • Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第一章 一、填空题 1、dex 2、@color 3、AndroidManifest.xml 4、LogCat 二、判断题 1、对 2、对 3、对 4、错 5、错 6、错 ...

    《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案

    第一章

    一、填空题

    1、dex

    2、@color

    3AndroidManifest.xml

    4、LogCat

    二、判断题

    1、对   2、对   3、对  4、错  5、错   6、错

    三、选择题

    1、C  2、C  3、D  4、C  5、A

    四、简答题

    1. 简述如何搭建Android开发环境

    答:Android开发环境的搭建分为3步,具体如下:

    1. Android Studio工具的下载、安装、以及相关配置。在安装过程中选择该工具的安装路径,以及配置Android Studio相关设置,如Android Studio工具的主题。
    2. 创建模拟器。首先单击ADV Manager的图标,在弹出框中选择模拟设备,接着下载Android SDK System Image,下载完成后创建并打开模拟设备。
    3. 下载SDK。分别在Default Settings窗口中下载SDK版本和SDK Tools工具。

     

    2. 简述Android源代码的编译过程

    答:Java源文件经过JDK编译器编译为class文件后,Dalvik虚拟机中的Dx工具会将部分class文件转换成dex文件,dex文件还会在Dalvik虚拟机中进一步优化成odex文件。

     

    3.简述Android系统架构包含的层次以及各层的特点

    答:Android系统架构从高到低分为四层,分别为依次是应用程序层(Applications)、应用程序框架层(Application Framework)、核心类库(Libraries)和Linux内核(Linux Kernel),各层的特点具体如下:

    1. 应用程序层:一个核心应用程序的集合,安装在手机中的应用程序都属于这一层。
    2. 应用程序架构层:主要提供了构建应用程序时用到的各种API。例如活动管理器(Activity Manager)。
    3. 核心类库:主要包含了系统库和Android运行环境。
    4. Linux内核:他为Android设备的各种硬件提供了底层的驱动,如:显示驱动。

     

    展开全文
  • Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第13-14章 第13章 图形图像处理 一、判断题 对 2、对 3、对 二、选择题 ABCD 2、ABCD 3、ABCD 4、B 5、C 三、简答题 简述逐帧...

    《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第13-14章

    第13章 图形图像处理

    一、判断题

    1. 对 2、对 3、对

    二、选择题

    1. ABCD 2、ABCD 3、ABCD 4、B 5、C

    三、简答题

    1. 简述逐帧动画的工作原理。

    答:逐帧(Frame)动画的工作原理非常简单,类似与动画片的工作原理,他按照事先准备好的静态图片顺序进行播放,并利用人眼的“视觉暂留”原理,使用户产生动画的错觉。

    第14章 多媒体应用开发

    一、判断题

    1. 对 2、对 3、错 4、对 5、对

    二、选择题

    1. ABC 2、ABC 3、D 4、

    三、简答题

    1. 简述使用MediaPlayer播放音频的步骤。

    答:使用MediaPlayer播放音频包含以下几个步骤:

    (1) 创建MediaPlayer对象

    (2) 调用setAudioStreamType()设置音频的类型

    (3) 设置数据源

    (4) 调用start()方法播放音频文件

    (5) 调用stop()方法停止播放音频文件

    (6) 调用release()方法释放MediaPlayer对象占用的资源

    1. 简要介绍一下SoundPool使用的场景。

    答:SoundPool又称为音频池,他适合在应用程序中播放按键音或者消息提示音等短小的多个音频。

    展开全文
  • 资源包括Android移动应用基础教程此书,课后配套习题即习题答案,附赠书上配套源码
  • Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第2章 Android常见界面布局 一、填空题 1、ViewGroup 2、LinearLayout 3、TableRow 4、RelativeLayout LinearLayout 5、iInt 二、判断...
  • 这个是工业和信息化“十三五”人才培养规划教材Android移动开发基础案例教程,黑马程序员编著配套源代码
  • 本章目录一、服务概述二、服务的创建三、服务的生命周期四、服务的启动方式1、调用startService()方法启动服务2、调用bindService()方法启动服务五、服务的...manifest xmlns:android="http://schemas.android.com/apk/
1 2 3 4 5 ... 20
收藏数 66,282
精华内容 26,512
关键字:

安卓移动应用开发基础教程