已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 Android开发环境搭建Android开发环境的搭建的搭建主要分为以下几个部分: 1. Java运行环境的安装和配置。这一部分主要讲述JDK1.6的安装和配置。 2. MyEclipse10.0的安装。这一部分主要讲述java集成开发环境MyEclipse10.0的安装。 3. Android SDK和AVD的安装。这一部分主要讲述Android的开发包SDK的安装和管理,以及Android的模拟器的使用。 4. MyEclipse10.0开发Android环境的搭建和配置。这部分主要讲述在MyEclipse10.0下安装Android开发包以及一些配置。 5. Android程序的创建和下载运行。这一部分主要讲述将MyEclipse10.0编译的Android的HelloWorld程序并下载到我们的真实Android设备和Android模拟器上运行。硬件环境:普通电脑(CPU:2.0GHZ主频及以上;内存:2G及以上;硬盘:剩余空间不低 于5GB), 物联网综合实验箱运行环境:Windows XP 相关软件路径:配套光盘应用程序1.1 Java运行环境的安装和配置1.0 About Java1、JVM安装JAVA的JDK,就是安装JVM,屏蔽语言和硬件的一些细节内容。任何一个平台,都有自己的JVM,包括Windows操作系统,Linux操作系统,Android操作系统。编写Java是和JVM打交道。2、Java编译成 .class 文件(class码,中间语言),然后,由JVM(Java Virtual Machine)解释成可执行文件。比C+运行慢3、J2SE、J2EE(Web方向,JSP)、J2ME(手机方向,已经被Android取代)1.1 打开 配套光盘 应用程序Android开发软件 目录双击jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe,出现如图1.1所示的协议接受对话框界面。r图1.1 jdk协议接受对话框1.2 单击接受图1.1的“接受”按钮,出现如图1.2所示的自定义安装对话框,对于“安装的可选功能”我们选择默认便可以,安装的路径我们可以选择默认路径:C:Program FilesJavajdk1.6.0_10 。请记住该路径,在下面步骤中会用到。图1.2 jdk安装设置1.3 单击下一步,出现如图1.3所示安装界面。图1.3 安装进度界面1.4. 安装完成界面如图1.4所示,单击“完成”按钮。图1.4 安装完成界面1.5 单击图1.4的“完成”按钮之后会出现如图5所示的浏览器打开的注册界面,直接单击关闭即可。图1.5 jdk注册界面1.6 按照第二步安装时所在的路径,笔者选择的是默认安装,打开之后的界面如图1.6所示。图1.6 安装之后指定路径下的内容1.7 回到桌面,右键“我的电脑”图标,选择“系统属性”,然后单击“高级”选项卡,如图1.7所示。图1.7 1.8 单击图1.7中的“环境变量(N)”按钮,出现如图1.8所示环境变量对话框,我们主要是需要配置系统变量(S)(注意“用户变量”与“系统变量”区别,用户变量配置也可)图1.8 环境变量配置界面1.9 单击图1.8中“新建”按钮,变量名(N)为 :JAVA_HOME; 变量值(V):(拷贝粘贴我们第6步的路径,笔者的是)C:Program FilesJavajdk1.6.0_10,如图1.9所示,然后单击“确定”按钮。(在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无关),若已存在则“编辑”,不存在则“新建”。)1、JAVA_HOME:指明JDK安装路径,(JDK路径);2、PATH:使得系统可以在任何路径下识别JAVA命令,设置为:(%JAVA_HOME%bin;%JAVA_HOME%jrebin;),3、CLASSPATH为JAVA加载类(class or lib)路径,只有类在classpath中,java命令才能识别,1.4JDK以后的不需要配置,为了兼容,最好配置。设置为(.;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar)(要加 . 表示当前路径)图1.9 添加java环境变量1.10 如图1.10 所示,单击 开始运行,然后在运行对话框中输入cmd 然后单击确定。 图1.10 运行cmd命令1.11 在如图1.11所示的DOS界面输入:java -version 然后按下回车键,这时如果jdk安装和设置正确就会出现如图所示的版本信息。DOS界面输入:javac然后按下回车键图1.11 jdk版本信息查看112 记事本中运行第一个java程序Stap0、notepad;Step1、编写一个Hello.java源文件(以.java为后缀名保存)public class Hello/1 外层框架public static void main(String args)/2 Java入口程序框架System.out.println(“Hello Java World!”);/3 编写代码Step2、打开控制台,输入命令:javac Hello.java 生成.class文件(javac(编译)和java(解释)源控制行命令都在jdk文件夹中,其中:javac就是把你的.java文件翻译成Java虚拟机(JVM)能够识别的字节码文件.class文件,即生成.class文件;java就是把.class文件解释为基于特定平台的计算机能够识别0101代码运行进来的可执行文件,即让虚拟机运行.class文件,输出程序结果)Step3、使用java命令运行.cass文件,输出程序结果java Hello(其中,1、java Hello中的Hello是类名,也是主文件名, public的类名和主文件名要完全保持一致!,.class必须省略;2、一个文件中只有一个public类;3、Java程序区分大小写;4、所有的Java程序是写在类里面的;) (只有一个public 类)-控制台结果输出: Hello Java World!*注:n将光标移动到下一行的第一格;t将光标移到下一个水平制表位置(8个空格);1.2 MyEclipse10.0的安装Eclipse:功能强大的Java IDE,三大部分:包资源管理器,代码编辑窗口,控制台窗口。(双击代码编辑窗口标题栏,最大化)MyEclipse是Eclipse最大的插件,什么都做了,所有的环境变量都不用配置了。2.1 打开 配套光盘 应用程序Android开发软件 目录,双击myeclipse-10.0-offline-installer-windows.exe,出现如图所2.1安装向导指示界面,单击“Next”下一步按钮。图2.1 安装向导界面2.2 如图2.2所示,勾选协议接受按钮,然后单击Next按钮。图2.2 MyEclipse协议界面2.3 选择MyEclipse安装目录,笔者在此选择 默认安装目录,如图2.3所示。图2.3 安装目录选择(问题)2.4 选择安装的MyEclipse组件类型,选择默认“All”然后单击“Next”下一步按钮。图2.4 MyEclipse组件安装选择2.5 MyEclipse安装进度显示如图2.5所示。图2.5 MyEclipse安装进度显示2.6 MyEclipse安装完成界面如图2.6所示,单击“Finish”,启动MyEclipse软件。图2.6 MyEclipse安装完成界面2.7 第一次启动MyEclipse软件时,会要你设置MyEclipse的工作目录位置,笔者将其设置为E:FSPMyEClipseWork 如图2.7所示。图2.7 工作目录设置2.8 启动之后软件会提示你还有5天的使用期,希望使用者注册,如图2.8所示。这个时候你有两种选择,要么拿钱购买,要么使用百度搜索相应的注册机破解,当然我们提倡前一种选择。图2.8 软件启动界面2.9 注册机破解:可以用MyEclipseCracked破解。步骤说明:0. 关闭MyEclipse应用程序。1. 填写任意用户名。(一般输入英文名称)2. 点击”生成机器码“按钮或选择“工具”-“生成机器码”选项,即可自动生成本机器的SystemID。3. 点击“激活”按钮或选择“工具”-“运行激活器”选项,计算序列号和激活码,并在下方文本框中显示计算后的信息。4. 点击“自动替换类包”按钮或选择“操作”-“自动替换类包”选项,在弹出对话框中选择myeclipse的Common-plugins文件夹,程序会自动在这个目录下查找并替换相关的类包。5. 点击“保存注册信息”按钮或选择“操作”-“保存注册信息”选项,生成myeclipse注册文件(.perities),自动保存到用户的目录下,myeclipse启动之后会读取信息激活产品。6. 打开MyEclipse应用程序即可激活成功。*注意:如果你没有注册成功,请仔细阅读使用帮助。(选择“关于”-“使用帮助”选项)2.9 名词 1 JVM虚拟机2 JREJRE(Java Runtime Environment,Java运行环境),操作系统,。运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。JRE包含 JVM如果一台计算机需求只是运行JAVa程序,而不是去编写java程序的时候,它只需要安装JRE就行了。3 JDK开发工具,JDK包含JRE最常用的一个就是javac,它是把java的文件翻译成.class文件的工具,然后,让JVM来执行.class文件中的字节码。JDK 包含 JRE,JRE包含 JVM2.10快捷键双击窗口标题栏,最大化之;alt + /代码快速填充;自动导包main alt+/ctrl + shift +/ 快速注释ctrl + shift + 快速取消注释ctrl + shift + f快速代码格式化ctrl + S保存/* + 回车加方法注释2.11 程序的调试下断点关注点Debug asF5 逐步F6过程变量 右键 watch回去,点 Java切换,点击 Debug2.12问题1、myeclipse中敲代码的字体太小了都看不清,改变字体的大小?WindowsGeneralAppearanceColors and Fonts2、包(建议小写,类名大写,Camal)三个作用:对应文件夹,解决类的同名问题。更好地保护类,数据和方法。有效地管理类,包的命名:公司名.项目名.功能名。如:it.java.base.ch01demo01.javademo02.javait.java.base.ch02demo01.javademo02.javait.java.core.ch01it.java.web.ch01it.java.db.ch01it.java.base.ch01.jobjob01.java job02.java导包操作,import自动导包操作 alt + /3、java方法,首字母一般要小写1.3 Android SDK和AVD的安装在做软件开发的时候,经常会看到各种*DK(JDK,SDK),本质上这些*DK就是已经编译好的库文件(C库,C+库,Java类库,Android开发库)。由于Android的版本很多(每半年更新一次),也导致了它的SDK很多,所以Android给用户提供了一个叫做SDK manager的软件来间接的获取这些库。所以对于用户来说安装Android SDK某种程度上就是安装和使用SDK manager软件。3.1 打开 配套光盘应用程序Android开发软件 目录,双击installer_r21.1-windows.exe软件,出现如图3.1所示界面,单击“Next”按钮。图3.1 Android SDK工具欢迎界面3.2 软件会自动检测你的JDK是否安装,如果检测到会显示你的JDK位置,笔者的位置如图3.2所示,然后单击“Next”按钮。图3.2 JDK检测3.3 选择windows 的哪一个登录用户具有更新Android SDK的权限,我们这里选择每一个登录用户,如图3.3所示。然后单击“Next”按钮。图3.3 选择具有更新权限的用户3.4 选择Android安装路径,笔者这里选择默认安装路径,如图3.4所示。图3.4 选择Android SDK安装路径3.5 选择Android SDK快捷方式名字,这里直接使用默认的,如图3.5所示,然后单击“Install”按钮。图3.5 快捷方式设置3.6 安装进度完成之后,单击“Next”,如图3.6所示。图3.6 安装进度3.7 之后出现如图3.7所示对话框,单击Finish启动Android SDK。图3.7 安装完成启动SDK对话框3.8 首次启动Android SDK需要联网,在线监测需要更新类容,如图3.8所示,由于网速原因,希望读者耐心等待,不过可以通过U盘将整个相关联的内容拷贝到其他电脑使用(5-android-sdk-windows.rar)。图3.8 检测各组件最新包3.9 选择我们要更新版本的组件,在其前面打钩,本次勾选之后需要更新22个包,如图3.9 所示,点击“Install 22 package.”图3.9 相应组件更新包检测3.10 在更新包时的协议对话框中选择接受协议,单击“Install”,如图3.10所示,由于第一次更新的内容很多,这些都是在google Android官网在线下载 然后解压安装的,所以就需要读者耐心的等待了。图3.10 包更新协议对话框3.11 经过一个小时,或者更久的等待之后,我们终于更新完了我们选择的软件包。如图3.11所示。图3.11 相应组件更新完之后的情况3.12 打开3.4步骤中指定的我们Android SDK 目录。 SDK Manager用来管理我们的Android SDK版本,而AVD Manager (Android Virtual Devices)用来管理我们的Android虚拟机。图3.12 Android SDK安装之后的目录内容注 Android SDK目录介绍:Add-ons: Android开发需要的第三方架包,默认为空;Docs Android的文档,包括开发指南、API等;Extras额外文档;Platform系统的Android平台版本;platform-tools Android开发工具,进行版本更新时更新,即随版本的更新而更新;tools独立于Android平台的开发工具,不随版本的更新,可是这里的程序可能随时更新;source:/file/f1c7946c3c2、Android环境变量的设置:主要是Android SDK目录下的platform及platform-tools常用工具,类似于JavaHome设置。3.13 双击AVD Manager 出现如图3.13所示界面,选择“New”新建一个Android虚拟机,图3.13 第一次打开AVD界面3.14 打开的创建新虚拟设备对话框中,进行如图3.14 所示信息设置,然后单击OK。注意RAM不能设置太高。由于虚拟机每次启动很慢,20分钟左右,所以读者记得勾选“Snapshot”快照选项,这样每次关闭虚拟机时虽然会花上5分钟左右的时间来保存你当前的虚拟机,但是下次打开时就会只花费你几分钟左右时间就能还原到你上次关闭时的状态。图3.14 新AVD信息设置3.15 弹出的虚拟机配置信息对话框如图3.15所示,单击“OK”。图3.15 新建虚拟机信息3.16 选择我们刚新建的虚拟机,然后单击“Start”启动按钮。图3.16 新创建的虚拟机3.17 在虚拟机登录选项中选择默认配置,如图3.17所示,然后点击“Lunch”按钮。图3.17 虚拟机登录选项3.18 Android虚拟机启动界面,如图3.18所示。这时你需要等待,等待,再等待。 图3.18 Android虚拟机启动界面 3.19 Android 虚拟机启动完成之后的界面如图3.19所示。虚拟机也可以象手机上进行配置。图3.19 Android虚拟机界面3.20 Android 虚拟机应用软件的安装。把下载的.apk文件复制到platform-tools内,在DOS状态下运行:adb install XX.apk卸载是:adb uninstall com.sky.mine(包名);(也可以在虚拟机上在应用程序管理上卸载)图3.19所示。1.4 MyEclipse10.0开发Android环境的搭建和配置4.1 进入 配套光盘应用程序Android开发软件 将ADT-22.0.4.zip 解压到当前目录。图4.1 解压ADT- 然后复制features 和plugins两个文件夹到我们MyEclipse的dropins目录之下,笔者的目录为:C:Program FilesMyEclipseMyEclipse 10dropins ,复制之后如图4.2所示。图4.2 4.3 从新启动我们的MyEclipse10.0软件,启动之后会出现如图4.3 所示的提示框,表示加载了Android相关组件。图4.3 加载Android相关组件提示框 4.4 单击MyEclipse主菜单的 WindowsPreferences 左边选择Android选项卡,右边通过浏览加载我们安装和做了相应更新之后的Android SDK主目录的路径,下面选择我们Android版本 Android4.0.3 如图4.4所示,然后单击OK。图4.4 选择Android SDK路径和版本4.5 单击MyEclipse主菜单的 WindowsCustomize Perspaective 上边选择Command Groups Availability选项卡,然后勾选Android SDK and AVD Manager 以及Android Wizards如图4.5所示,然后单击OK按钮。图4.5 软件界面 4.6 之后就会发现界面多了两个Android的图标,如图4.6所示。图4.6 添加软件的Android快捷图标4.7 MyEclips编辑字体的设置,Windows Perfpaective - General-Appearance-Colors and Font -Basic - Text Font - 大小14; 4.7所示。图4.7 MyEclips编辑字体的设置(一)图4.7 MyEclips编辑字体的设置(二)4.8 MyEclips编辑行号的设置,Windows Preference - General-Editors-Text Editors- V Show line numers,4.8所示。图4.8 MyEclips行号设置4.9 MyEclips自动更新关闭,Windows Preference - General-Startup and Shutdown - Automatic Updates Scheduler,4.9所示。图4.9 MyEclips自动更新关闭4.10 大括号设置,Windows Preferences - Java- Formatter - -Edit-Braces,4.10所示。图4.10 MyEclips格式大括号设置(一)图4.10 MyEclips格式大括号设置(二)4.11 一行中最大字符数据设置,Windows Preferences - Java- Formatter - -Edit-Line Wraping - ,4.11所示。图4.11 MyEclips编辑一行中最大字符数设置4.12 编辑自动提示设置,Windows Preferences - Java- Editor -Content Assist - Auto-Activation Auto Activation triggers for Java:,在原的有 . 基础上输:abcdefghijklmnopqrstuvwxyz。如图4 .12所示。图4.12 MyEclips编辑自动提示设置1.5 Android程序的创建和下载运行5.1 打开MyEclipse10开发环境,单击主菜单的File-New-Android Application Project出现如图5.1所示的对话框,在对话框中进行如图所示的输入和设置。图5.1 创建Android应用程序注:1、Application Name 就是可执行文件名字;2、Package Name:com.zzq.hello.activity包名3、Create Activity: HelloActivity5.2 经过三次Next按钮和一次Finish按钮单击之后,开发环境出现了如图所示的界面。左边为工程文件的树目录。 bin目录放置我们编译后生成的App可执行程序. gen放置我们ADT生成的java文件,如R.java和AIDL文件创建的接口等。 libs 放置我们开发需要放入的库文件,如创建Android程序时自动加载的 android-support-v4.java库文件。 res放置我们的资源文件,当该文件夹下的文件发生变化时,R文件会自动修改。他下面的 drawable-hdpi、drawable-ldpi、drawable-mdpi等分别存放我们程序开发需要的png 格式图片文件。他下面的layout文件夹存放我们开发经常会使用的XML界面文件。他下面的values文件夹下保存开发使用的字符串,有利于开发国际化程序。 src文件夹下保存我们编写的源代码。 由于Android工程在创建时就会自动为我们在activity_main.xml文件中添加一个TextView空间,并在上面显示“HelloWold”,且在对应的MainActivity.java文件中让我们的界面一运行就显示出来,所以我们现在就可以编译运行我们的HelloWorld工程了。 图5.2 程序开发界面5.3 编译并运行我们的程序在虚拟机上。当我们的开发板没有连接到电脑时,运行我们的程序就会自动调用我们的创建的虚拟机。右键我们的工程在弹出的菜单选择Run As-1 Android Application效果如图5.3所示。 图5.3 虚拟机运行效果5.4 将实验箱上A8开发板通过USB线与电脑连接好,这个时候运行电脑的“360手机助手”并且保证电脑能够正常上网(因为第一次需要下载电脑能够识别开发板相应的驱动),那么360手机助手 就会自动安装适合该开发板的驱动到电脑上,安装好后如图5.4所示。图5.4 360手机助手识别的开发板5.5 右键我们的工程在弹出的菜单选择Run As-1 Android Application这个时候如果弹出如图5.5所示的对话框要求你选择运行设备时,选中“unknow-full.”再单击OK.图5.5 app运行设备选择5.6 此时app会自动下载到我们的开发板然后运行,其运行效果如图5.6所示。图5.6 开发板上运行效果2 第一个Android程序本节课的主要内容有:1.如何在Android平台下开发Hello World项目2.简单分析继承自Activity的HelloActivity类3.详细介绍Android项目的结构一、如何在Android平台下开发Hello World项目二、简单分析继承自Activity的HelloActivity类三、详细介绍Android项目的结构4.TextView控件学习1.详细介绍了如何使用TextView控件2.介绍了sp和dp两个常用的单位3.如何改变TextView字体的颜色,包括指定位置内容的颜色4.如何给TextView的文本设置超链5.如何在TextView中实现跑马灯的效果5.EditText控件学习本节课的主要内容有:1.详细介绍了如何使用EditText控件2.讲解如何移除EditText上的焦点3.讲解如何限制EditText中字符数量和字符类型4.讲解如何设置EditText提示信息5.讲解如何在EditText里加入图片6.讲解如何改变EditText的外观6.DDMS视图&Button1.详细介绍了DDMS视图2.讲解如何创建Button控件3.讲解给Button控件添加事件的几种方法7.Intent初级学习1.讲解什么是Intent2.如何发送短信3.如何拨打电话4.Activity之间传递参数8.Activity生命周期1.Log类简单的使用2.通过实例详细讲解Activity的生命周期9.Activity高级学习1.学习如何保存Activity状态2.介绍Android提供的主题10. LinearLayout学习1.介绍LinearLayout布局2.通过实例讲解android:gravity属性3.通过实例讲解android: layout_weight属性11.AbsoluteLayout&FrameLayout学习1.介绍AbsoluteLayout布局的使用2.介绍FrameLayout布局的使用12.RelativeLayout学习1.讲解什么是RelativeLayout2.详细讲解了与RelativeLayout相关的布局属性,包括:android:layout_aboveandroid:layout_belowandroid:layout_toLeftOfandroid:layout_toRightOfandroid:layout_alignBaselineandroid:layout_alignBottomandroid:layout_alignLeftandroid:layout_alignRightandroid:layout_alignTopandroid:layout_alignParentLeftandroid:layout_alignParentRightandroid:layout_alignParentTopandroid:layout_alignParentBottomandroid:layout_centerHorizontalandroid:layout_centerInParentandroid:layout_centerVertical补充13.TableLayout学习1.讲解什么是TableLayout2.通过演示讲解TableLayout常用的属性android:collapseColumns:隐藏指定的列android:shrinkColumns:收缩指定的列以适合屏幕,不会挤出屏幕android:stretchColumns:尽量把指定的列填充空白部分android:layout_column:控件放在指定的列android:layout_span:该控件所跨越的列数14.程序调试技术学习1.使用Log类进行日志输出2.详细讲解如何进行单元测试3.通过实例学习Debug调试技能15.Service学习(1)1.详细讲解什么是Service2.Service与Thread的区别3.使用Service的方式4.讲解通过startService()使用Service16.Service学习(2)1.详细讲解什么是Bound Services2.详细讲解如何创建Bound Services3.通过实例演示如何通过扩展Binder类创建创建Bound Services17.Service学习(3)1.通过实例演示Service线程和调用者线程的关系2.通过实例演示使用IntentService的好处3.详细介绍IntentService18.消息处理详解1.详细讲解MessageQueue、Message、Looper、Handler2.通过剖析源代码学习Android中消息处理机制19.Status Bar Notifications学习1.通过实例演示如何使用Notifications20.广播事件处理(1)1.详细介绍什么是Broadcast Receiver2.通过代码演示使用Broadcast Receiver3.讲解BroadcaseReceiver生命周期4.讲解标准广播Action21.广播事件处理(2)本节课的主要内容有:1.详细讲解在AndroidManifest.xml文件中进行广播注册的优势和劣势2.详解如何在应用程序的代码中进行广播注册22.数据存储(1)本节课的主要内容有:1.介绍Android中数据存储方式2.介绍SQLite3.讲解SQLite数据类型4.讲解基本SQL命令23.数据存储(2)本节课的主要内容有:1.讲解SQLiteOpenHelper类2.实例演示如何在Android中进行表的增删改查24.数据存储(3)本节课的主要内容有:1.学习数据库的增删改查2.学习
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 烟草天津公司招聘考试真题2025
- 网络技术信息安全题库及答案解析
- 酒店前厅接待服务规范与客户投诉处理
- 无人机飞行安全管理系统设计
- 消防设施管理信息化平台建设方案
- 老年保健学试题及答案解析
- 铜矿施工管理人员综合能力提升培训
- 校园消防安全监控系统升级方案
- 清洁公司毕业生试题带答案
- 会议音视频项目可行性分析报告范文
- 2025年文化遗产数字化保护与利用的数字文化遗产保护技术风险评估
- 人工智能在酒店管理中的运用-洞察及研究
- 招标采购从业人员考试(招标采购专业实务初、中级)试题库及答案(2025年贵州)
- 马克思原理题库及答案
- 宣传业务培训课件
- 山东长信化学科技股份有限公司2万吨年NMP回收利用项目环评报告表
- 沟渠挖掘预算方案模板(3篇)
- 职业学院智慧教室建设技术方案
- 《随县畜禽管理办法》
- 2025年邮政集团党群工作部招聘面试常见问题解析及应对策略建议
- 政务接待礼仪课件
评论
0/150
提交评论