jcf2.0--框架开发手册

jcf2.0--框架开发手册
jcf2.0--框架开发手册

JCF框架开发手册

目录

第1章概述 (3)

1.1 面向读者 (3)

1.2 开发规范 (3)

1.2.1 程序内命名规范 (3)

1.2.2 文件及包名命名规范 (3)

1.2.3 程序中注意事项 (3)

1.3 开发准备 (3)

第2章快速入门 (5)

2.1 web.xml配置 (5)

2.2 系统配置 (6)

2.2.1 jwcf-system-config.xml文件配置 (6)

2.2.2 struts-config.xml文件配置 (8)

2.2.3 jwcf-app-config.xml文件配置 (8)

2.3 示例 (9)

2.3.1 Action (9)

2.3.2 Dao (11)

2.3.3 Bean (13)

2.4 核心API (16)

2.4.1 Action (16)

2.4.2 DaoTemplate (16)

2.4.3 SessionFactory (18)

2.4.4 Session (18)

2.4.5 Query (19)

2.4.6 SQLQuery (20)

2.5 常用工具类 (21)

2.5.1 BeanUtil (21)

2.5.2 DateUtil (21)

2.5.3 DES (22)

2.5.4 DoText (22)

2.5.5 HtmlEncoder (23)

2.5.6 HttpUtil (23)

2.5.7 IOutil (23)

2.5.8 MD5 (23)

2.5.9 RequestUtil (23)

2.5.10 StringUtil (24)

2.5.11 UUIDutil (25)

2.5.12 WrapHttpUtil (25)

2.5.13 ZipUtil (25)

2.6 标签库 (25)

2.6.1 page (25)

2.6.2 iterator (25)

2.6.3 object (25)

2.6.4 property (26)

2.7 日志 (26)

第3章对外接口 (27)

3.1 数据库支持接口 (27)

第4章核心代码生成工具 (28)

4.1 使用方法 (28)

4.1.1 根据table生成代码 (28)

4.1.2 根据select语句生成代码 (28)

4.2 生成代码说明 (29)

第5章联系我们 (31)

第1章概述

1.1面向读者

本文档详细介绍了jcf框架的配置及核心API的使用方法,主要面向使用jcf 框架开发的开发人员、实施部署人员。

1.2开发规范

1.2.1程序内命名规范

●Package的命名:Package 的名字应该都是由一个小写单词组成。

●Class 的命名:Class 的名字必须由大写字母开头而其他字母都小写的单词组

●Class 变量的命名:变量的名字必须用一个小写字母开头。后面的单词用大

写字母开头。

●Static Final 变量的命名:Static Final 变量的名字应该都大写,并且指出完整

含义。

●参数的命名:参数的名字必须和变量的命名规范一致。

●数组的命名:数组应该总是用下面的方式来命名:byte[] buffer; 而不是byte

buffer[];

●方法的参数:使用有意义的参数命名,如果可能的话,使用和要赋值的字段

一样的名字:

setCounter(int size){

this.size = size;

}

1.2.2文件及包名命名规范

1.包的导入应该按照相关性进行分组

2.包命名规范为,例如:

com.icss.zjhjc.ajgl包下面,包含action、dao、value三个子包。

1.2.3程序中注意事项

1.除定义常量类中final static定义变量外,其他类中一概不允许有static变量2.不允许使用session,Application等常驻内存的介质传递参数或保存数据1.3开发准备

1.搭建基本开发环境

1)安装数据库。Oracle为9i以上版本,mysql为5.0以上版本

2)安装应用服务器。Websphere为6.0以上版本,weblogic为9.0以上版本,tomcat为5.5以上版本,jdk需要支持1.5或以上版本。

2.安装开发工具

将eclipse插件com.jwcf.tool.FrameworkTool_2.0.0安装文件拷贝到eclipse的plugins目录下面,重新启动myclipse。在插件栏目下看到:

Jwcf Tool即为我们所安装的eclipse插件。

第2章快速入门

2.1web.xml配置

xmlns:xsi="https://www.360docs.net/doc/f313735670.html,/2001/XMLSchema-instance" version="2.4"

xsi:schemaLocation="https://www.360docs.net/doc/f313735670.html,/xml/ns/j2ee

https://www.360docs.net/doc/f313735670.html,/xml/ns/j2ee/web-app_2_4.xsd">

test1

GZIPFilter

com.jwcf.mvc.filter.GZIPFilter

CharacterEncoding

*.do

CharacterEncoding

*.jsp

GZIPFilter

*.do

GZIPFilter

*.jsp

com.jwcf.mvc.listener.RequestContextListener

action

org.apache.struts.action.ActionServlet

config

/WEB-INF/config/struts-config.xml

debug

3

detail

3

3

SystemInitAll

com.jwcf.mvc.init.InitAll

log4j-init-file

WEB-INF/config/log4j.properties

system-config-file

WEB-INF/config/jwcf-system-config.xml

app-config-file

WEB-INF/config/jwcf-app-config.xml

5

action

*.do

http://com.jwcf.jsp/page

/WEB-INF/config/jwcf.mvc.tld

ResourceOne/DataSource

javax.sql.DataSource

Container

everyone

2.2系统配置

2.2.1jwcf-system-config.xml文件配置

https://www.360docs.net/doc/f313735670.html,

com.jwcf.mvc.dao.dialect.OracleDialect

jndi

2

true

jdbc/zjhjc

oracle.jdbc.OracleDriver

jdbc:oracle:thin:@127.0.0.1:1521:CNPC

roeee

roeee

jdbc/zjhjc

oracle.jdbc.OracleDriver

jdbc:oracle:thin:@127.0.0.1:1521:CNPC

roeee

roeee

jdbc/zjhjc

oracle.jdbc.OracleDriver

jdbc:oracle:thin:@127.0.0.1:1521:CNPC

roeee

roeee

sequence

com/zjhjc/sys/value/RoModule.xml

com/zjhjc/sys/value/MessView.xml

com.zjhjc.sys.value.PersonAccount

com.zjhjc.sys.value.MessSend

exe,bat,html,htm,sh,db

4194304

4096

2.2.2struts-config.xml文件配置

type="https://www.360docs.net/doc/f313735670.html,zyValidatorForm"/>

scope="request"/>

2.2.3jwcf-app-config.xml文件配置

abc

1

abc

bcd

2

bcd

2.3示例

2.3.1Action

package com.zjhjc.sys.action;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

import com.zjhjc.sys.dao.MessSendDao;

import com.zjhjc.sys.value.MessSend;

import com.jwcf.mvc.action.MyBase4ExtAction;

import com.jwcf.mvc.log.Logger;

import com.jwcf.mvc.util.StringUtil;

/**

* @description 业务逻辑体

* @author hongzhenhua

* @email hzh262000@https://www.360docs.net/doc/f313735670.html,

* @time Sun Oct 03 13:01:07 CST 2010

* @version 1.0

*/

public class MessSendAction extends MyBase4ExtAction {

private MessSendDao messSendDao;

public void setMessSendDao(MessSendDao messSendDao) {

this.messSendDao = messSendDao;

}

/**

* @description 跳转页面

*/

public ActionForward go(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

return forward("/jsp/sys/messSend.jsp");

}

/**

* @description 显示列表

*/

public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

MessSend messSend = new MessSend();

messSend.setIsSend("1");

List messSendList = messSendDao.getMessSendList(messSend, true);//.getMessSendList(true);

String str = StringUtil.list2JSON(messSendList);

super.printText4ListExtJson(str);

return null;

}

/**

* @description 创建对象

*/

public ActionForward create(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

try{

MessSend messSend = (MessSend)getParamByClass(MessSend.class,form);

messSendDao.saveMessSend(messSend);

super.printText("{success:true}");

}catch(Exception e){

super.printText("{success:false}");

Logger.error(e.getMessage(),e);

}

return null;

}

/**

* @description 更新单个对象

*/

public ActionForward update(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

try{

MessSend messSend = (MessSend)getParamByClass(MessSend.class,form);

messSendDao.updateMessSendByPrimaryKey(messSend);

super.printText("{success:true}");

}catch(Exception e){

super.printText("{success:false}");

Logger.error(e.getMessage(),e);

}

return null;

}

/**

* @description 删除对象

*/

public ActionForward delete(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

String id = request.getParameter("uuid");

messSendDao.deleteMessSendPrimaryKey(id);

return null;

}

/**

* @description 显示单个对象

*/

public ActionForward get(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

String id = request.getParameter("uuid");

MessSend messSend = messSendDao.getMessSendByPrimaryKey(id);

String str = StringUtil.object2JSON(messSend);

super.printText(str);

return null;

}

}

2.3.2Dao

package com.zjhjc.sys.dao;

import java.util.List;

import com.jwcf.mvc.dao.ExtDaoTemplate;

import com.jwcf.mvc.exception.DaoException;

import com.zjhjc.sys.value.MessSend;

/**

* @description 业务逻辑体

* @author hongzhenhua

* @email hzh262000@https://www.360docs.net/doc/f313735670.html,

* @time Sun Oct 03 13:01:07 CST 2010

* @version 1.0

*/

public class MessSendDao extends ExtDaoTemplate {

/**

* @description 获取列表

*/

@SuppressWarnings("unchecked")

public List getMessSendList(boolean hasPage) throws Exception{

List messSendList = super.find(MessSend.class, hasPage);

return messSendList;

}

/**

* @description 获取列表,带where条件

*/

@SuppressWarnings("unchecked")

public List getMessSendList(String whereSql,boolean hasPage) throws Exception{ List messSendList = super.find(MessSend.class, hasPage,whereSql);

return messSendList;

}

/**

* @description 获取列表,带合并查询条件

*/

@SuppressWarnings("unchecked")

public List getMessSendList(MessSend messSend,boolean hasPage) throws DaoException{ List messSendList = super.find(messSend, hasPage);

return messSendList;

}

/**

* @description 根据主键获取对象

*/

public MessSend getMessSendByPrimaryKey(String id) throws DaoException{

MessSend messSend = new MessSend();

messSend.setMessId(id);

return (MessSend) super.findByPrimaryKey(messSend);

}

/**

* @description 保存对象

*/

public Object saveMessSend(MessSend messSend) throws DaoException{

return super.save(messSend);

}

/**

* @description 根据主键更新对象

*/

public int updateMessSendByPrimaryKey(MessSend messSend) throws DaoException{ return super.updateByPrimaryKey(messSend);

}

/**

* @description 根据主键删除对象

*/

public int deleteMessSendPrimaryKey(String id) throws DaoException{

MessSend messSend = new MessSend();

messSend.setMessId(id);

return super.deleteByPrimaryKey(messSend);

}

}

2.3.3Bean

package com.zjhjc.sys.value;

import com.jwcf.mvc.persistence.Column;

import com.jwcf.mvc.persistence.Entity;

import com.jwcf.mvc.persistence.Id;

import com.jwcf.mvc.persistence.Table;

import java.sql.Timestamp;

import com.jwcf.mvc.vo.ValueObject;

import java.sql.Date;

/**

* @description 对应messSend表

* @author hongzhenhua

* @email hzh262000@https://www.360docs.net/doc/f313735670.html,

* @time Sun Oct 03 13:01:06 CST 2010

* @version 1.0

*/

@Entity

@Table(name = "MESS_SEND")

public class MessSend extends ValueObject {

private String messId;

private String hyId;

private String townId;

private String messTitle;

private String displayAddress;

private String mapAddress;

private String zbMess;

private String bussLine;

private String isSend;

private Integer visitCount;

private Timestamp createTime;

public MessSend(){

}

public MessSend(String messId){

this.messId = messId;

}

@Id(generator="uuid", name="MESS_ID")

public String getMessId(){

return messId;

}

public void setMessId(String messId){

this.messId = messId;

}

@Column(name="HY_ID")

public String getHyId(){

return hyId;

}

public void setHyId(String hyId){

this.hyId = hyId;

}

@Column(name="TOWN_ID")

public String getTownId(){

return townId;

}

public void setTownId(String townId){

this.townId = townId;

}

@Column(name="MESS_TITLE")

public String getMessTitle(){

return messTitle;

}

public void setMessTitle(String messTitle){

this.messTitle = messTitle;

}

@Column(name="DISPLAY_ADDRESS")

public String getDisplayAddress(){

return displayAddress;

}

public void setDisplayAddress(String displayAddress){

this.displayAddress = displayAddress;

}

@Column(name="MAP_ADDRESS")

public String getMapAddress(){

return mapAddress;

}

public void setMapAddress(String mapAddress){ this.mapAddress = mapAddress;

}

@Column(name="ZB_MESS")

public String getZbMess(){

return zbMess;

}

public void setZbMess(String zbMess){

this.zbMess = zbMess;

}

@Column(name="BUSS_LINE")

public String getBussLine(){

return bussLine;

}

public void setBussLine(String bussLine){

this.bussLine = bussLine;

}

@Column(name="IS_SEND")

public String getIsSend(){

return isSend;

}

public void setIsSend(String isSend){

this.isSend = isSend;

}

@Column(name="VISIT_COUNT")

public Integer getVisitCount(){

return visitCount;

}

public void setVisitCount(Integer visitCount){ this.visitCount = visitCount;

}

@Column(name="CREATE_TIME")

public Timestamp getCreateTime(){

return createTime;

}

public void setCreateTime(Timestamp createTime){ this.createTime = createTime;

}

}

2.4核心API

2.4.1Action

1.向页面输出,相当于jsp中的out.write()方法。

protected void printJavaScript(String javascript,HttpServletResponse response) protected void printText(String text,HttpServletResponse response)

protected void printText(String text)

2.获取request的参数

protected Object getParamByClass(Class po, ActionForm form)

protected Object getParamByClass(Object vo, ActionForm form)

3.设置分页显示记录

protected void setPageSize(Integer pageSize)

4.跳转及重定向页面

protected ActionForward forward(String arg0)

protected void redirect(String arg0)

5.跳转

protected void gotoMethod(String methodName);跳转到本类中的methodName方法。

protected void gotoMethod(String methodName, String parmeter)

protected void gotoClassMethod(String className, String methodName);跳转到className的action的methodName方法。

protected void gotoClassMethod(String className, String methodName, String parmeter)

6.获取分页对象

protected PageUtil getPageUtil()

2.4.2DaoTemplate

1.保存对象。public final Object save(ValueObject vo)

2.根据主键跟新对象。public final int updateByPrimaryKey(ValueObject vo) 3.根据where条件跟新对象。public final int update(ValueObject vo,String whereClause)

4.根据主键删除对象。public final int deleteByPrimaryKey(ValueObject vo)

5.根据where条件删除对象。public final int delete(ValueObject vo,String whereClause); public final int delete(Class clazz,String whereClause)

6.根据主键查找对象。public final Object findByPrimaryKey(ValueObject vo) 7.查找对象。并设置hasPage是否有分页。

public final List find(Class clazz,boolean hasPage)

public final List find(Class clazz,boolean hasPage,String whereClause)

public final List find(Class clazz)

public final List find(Class clazz,String whereClause)

public final List find(ValueObject vo,boolean hasPage)

8.查找sql语句生成的对象。

public final List queryForList(String mapId,Object parameter,boolean hasPage) public final List queryForList(String mapId,Object param)

public final List queryForList(String id)

public final List queryForList(String mapId,boolean hasPage)

public final Object queryForObject(String mapId,Object parameter,boolean hasPage) public final Object queryForObject(String mapId,Object param)

public final Object queryForObject(String id)

public final Object queryForObject(String mapId,boolean hasPage)

9.用sql语句查询,并返回class所表示的对象。

public final List findBySQL(String sql,Object[] args, boolean hasPage, String countSql,Class clazz)

public final List findBySQL(String sql,Class clazz)

public final List findBySQL(String sql,boolean hasPage,Class clazz)

public final List findBySQL(String sql,Object[] args,Class clazz)

public final List findBySQL(String sql,Object[] args, String countSql,Class clazz) 10.用sql语句查询,返回object[]。

public final List findBySQL(String sql,Object[] args,boolean hasPage,String countSql)

public final List findBySQL(String sql,Object[] args,String countSql) public final List findBySQL(String sql,Object[] args,boolean hasPage)

public final List findBySQL(String sql,Object[] args)

public final List findBySQL(String sql,boolean hasPage)

public final List findBySQL(String sql)

2.4.3SessionFactory

1.打开本地ThreadLocal线程session。

public static Session getLocalSession()

2.根据connection打开session

public static Session openSession(Connection conn)

3.关闭所有session

public static void closeLocalSession()

2.4.4Session

1.创建Query查询对象。

public Query createQuery(Class clazz)

public Query createQuery(Class clazz, Serializable id)

public Query createQuery(Class clazz, String whereClause)

public Query createQuery(Object object)

public Query createQuery(String mapId)

public Query createQuery(String mapId, Object param)

2.创建SQLQuery查询对象。

public SQLQuery createSQLQuery(String sql)

public SQLQuery createSQLQuery(String sql, Object[] args)

public SQLQuery createSQLQuery(String sql, Object[] args, String countSql)

public SQLQuery createSQLQuery(String sql, Class clazz)

public SQLQuery createSQLQuery(String sql, Object[] args, Class clazz)

public SQLQuery createSQLQuery(String sql, Object[] args, String countSql, Class clazz)

3.删除对象

public int delete(Object object)

public int delete(Class clazz, Serializable id)

public int delete(Object object, String whereClause)

public int delete(Class clazz, String whereClause)

4.保存对象

public Serializable save(Object object)

public Serializable save(Class clazz, Object object)

public void saveOrUpdate(Object object)

public void saveOrUpdate(Class clazz, Object object)

5.更新对象

public int update(Object object);根据主键更新

public int update(Class clazz, Object object)

public int update(Object object, String whereClause);根据where语句更新对象public int update(Class clazz, Object object, String whereClause)

6.根据主键获取对象

public Object get(Class clazz, Serializable id)

2.4.5Query

1.获取对象

public Object get()

public Object load()

2.获取列表

public List list()

3.设置是否分页

public Query hasPage(boolean hasPage)

4.设置取出记录集数

public Query setFetchSize(int fetchSize)

5.设置获取的记录起始位置

public Query setFirstResult(int firstResult)

6.设置获取最大记录集数

public Query setMaxResults(int maxResults)

7.设置是否以只读方式查询

public Query setReadOnly(boolean readOnly)

8.设置排序的字段,true为升序,false为倒序public Query addOrder(String fieldName,boolean flag) 9.设置不查询的字段

public Query addNoSelectField(String... filedsName) 10.设置是否是ext的模式

public Query setQuery4Ext(boolean flag)

2.4.6SQLQuery

1.获取对象

public Object get()

2.获取列表

public List list()

3.设置是否分页

public Query hasPage(boolean hasPage)

4.设置取出记录集数

public Query setFetchSize(int fetchSize)

5.设置获取的记录起始位置

public Query setFirstResult(int firstResult)

6.设置获取最大记录集数

public Query setMaxResults(int maxResults)

7.设置是否以只读方式查询

public Query setReadOnly(boolean readOnly)

8.设置是否是ext的模式

public Query setQuery4Ext(boolean flag)

9.执行dml语句,如:insert delete update语句public int executeUpdate()

10.执行ddl语句,如:创建table 创建view等语句public void execute()

A20_Android开发手册_V1[1].0

C o n f i d e n t i a l A20Android 开发手册 V 1.0 2013-02013-03 3-15

C o n f i d e n t i a l Revision History Version Date Section/Page Changes 1.0 2013-03-15 初始版本

C o n f i d e n t i a l 目录 一、A20概述 (4) 1.1A20主控介绍.....................................................................................................................51.2外围设备介绍.....................................................................................................................51.3软件资源介绍.....................................................................................................................5二、建立开发环境. (5) 2.1硬件资源............................................................................................................................62.2软件资源. (6) 2.2.1安装JDK (ubuntu12.04).....................................................................................62.2.2安装平台支持软件(ubuntu12.04).....................................................................62.2.3安装编译工具链(ubuntu12.04).........................................................................62.2.4安装phoenixSuit (windows xp )........................................................................72.2.5其他软件(windows xp ).. (7) 三、源码下载 (8) 3.1wing 源码下载....................................................................................................................83.2仓库的目录树.. (8) 3.2.1android 目录树.........................................................................................................83.2.2lichee 目录结构.. (9) 3.2.2.1buildroot 目录结构........................................................................................93.2.2.2linux-3.3目录结构......................................................................................103.2.2.3u-boot 目录结构..........................................................................................113.2.2.4tools 目录结构............................................................................................123.2.2.5boot 目录结构 (12) 四、编译和打包 (13) 4.1源码编译 (13) 4.1.1lichee 源码编译......................................................................................................134.1.2android 源码编译...................................................................................................134.2打包固件.. (13) 4.2.1完全打包...............................................................................................................134.2.2局部打包 (14) 五、固件烧写 (14) 5.1使用PhoenixSuit 烧写固件.............................................................................................145.2使用fastboot 更新系统 (14) 5.2.1进入fastboot 模式.................................................................................................145.2.2fastboot 命令使用.. (15) 六、recovery 功能使用 (15) 6.1键值的查看......................................................................................................................156.2按键选择..........................................................................................................................166.3功能使用..........................................................................................................................16七、调试 (17) 7.1调试apk...........................................................................................................................177.2调试linux 内核. (17)

Android开发规范参考文档

Android开发参考文档 一、Android编码规范 1. java代码中不出现中文,最多注释中可以出现中文.xml代码中注释 2. 成员变量,局部变量、静态成员变量命名、常量(宏)命名 1). 成员变量: activity中的成员变量以m开头,后面的单词首字母大写(如Button mBackButton; String mName);实体类和自定义View的成员变量可以不以m开头(如ImageView imageView,String name), 2). 局部变量命名:只能包含字母,组合变量单词首字母出第一个外,都为大写,其他字母都为小写 3). 常量(宏)命名: 只能包含字母和_,字母全部大写,单词之间用_隔开UMENG_APP_KEY 3. Application命名 项目名称+App,如SlimApp,里面可以存放全局变量,但是杜绝存放过大的实体对象4. activity和其中的view变量命名 activity命名模式为:逻辑名称+Activity view命名模式为:逻辑名称+View 建议:如果layout文件很复杂,建议将layout分成多个模块,每个模块定义一个moduleViewHolder,其成员变量包含所属view 5. layout及其id命名规则 layout命名模式:activity_逻辑名称,或者把对应的activity的名字用“_”把单词分开。

命名模式为:view缩写_模块名称_view的逻辑名称, 用单词首字母进行缩写 view的缩写详情如下 LayoutView:lv RelativeView:rv TextView:tv ImageView:iv ImageButton:ib Button:btn 6. strings.xml中的 1). id命名模式: activity名称_功能模块名称_逻辑名称/activity名称_逻辑名称/common_逻辑名称,strings.xml中,使用activity名称注释,将文件内容区分开来 2). strings.xml中使用%1$s实现字符串的通配,合起来写 7. drawable中的图片命名 命名模式:activity名称_逻辑名称/common_逻辑名称/ic_逻辑名称 (逻辑名称: 这是一个什么样的图片,展示功能是什么) 8. styles.xml 将layout中不断重现的style提炼出通用的style通用组件,放到styles.xml中; 9. 使用layer-list和selector,主要是View onCclick onTouch等事件界面反映

安卓开发环境搭建完全手册

安卓开发环境搭建完全手册 小安:博士,刚才听你说了这么多,我感觉Android平台真是前景无限,决定要从事Android开发,成为一名Android高手。今后请您多多指教! 大致:小安,我代表全体Android开发人员欢迎你加入Android开发的队伍,现在我就告诉你开发Android需要准备些什么。 1.1准备所需软件 1.1.1Android开发需要的工具 1)JDK5或JDK6 需要注意的是仅有JRE是不够的。JRE是Java的运行环境,而JDK不仅包含了JRE,还包含了我们开发Java程序所需要的工具集合。 JDK可以到:https://www.360docs.net/doc/f313735670.html,/javase/downloads/index.jsp页面下载。 2)Eclipse3.5 使用MyEclipse也可以,但由于MyEclipse是收费的并且插件较多影响运行速度,因此不建议采用。Eclipse是一个开放源代码的、基于Java的可扩展的集成开发环境(IDE)。Eclipse中可以集成进多种插件,以完成特定语言的开发。 下载地址:https://www.360docs.net/doc/f313735670.html,/downloads/页面中的EclipseIDEforJavaEEDevelopers链接。 3)Android SDK: SDK是我们开发Android应用程序的软件开发工具包。 下载地址:https://www.360docs.net/doc/f313735670.html,/android/android-sdk_r05-windows.zip 4)Eclipse的插件ADT(Android Development Tools)

Android开发工具(ADT)是一个为EclipseIDE设计的旨在提供一个强大的、集成的环境来建立Android 应用程序的插件。ADT扩展了Eclipse的功能,可以快速建立新的Android项目,创建一个应用程序界面。它添加了基于Android框架API的组件,使用AndroidSDK工具调试你的应用程序,甚至导出签名(或未签名)APKs以分发你的应用程序。在Eclipse中强烈建议使用ADT进行开发,ADT提供了令人难以置信的提高开发Android应用程序的效率。 下载地址:https://www.360docs.net/doc/f313735670.html,/android/ADT-0.9.5.zip 准备好这些工具,我们就可以安装这些软件来搭建Android的开发环境了。有一点需要注意,以上的链接部分会由于官方的更新而产生变动,有时下载到的版本不同,但下载的方式如此,如果遇到问题可以参考官方帮助文档 1.2安装所需的软件 1.2.1.安装JDK6 1.找到JDK安装文件,双击运行,界面如下:

Android开发入门文档 v1.1

RK28平台技术文档 Android 开发入门 部 门: 内核组 版 本: V1.1 作 者: 陈美友 文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改 日 期: 2008-12-1 关键字 Linux 、Android 、Native C/C++、编译、下载 概 述 本文档主要讲述了Android 的下载、编译,以 及本地C/C++程序的开发、Android 应用程序 的开发等… 本文档适用了Android 开发的初学者

目录 下载ANDROID源码 (3) 编译ANDROID源码: (4) 编译ANDROID中的LINUX内核: (5) 编译NATIVE C/C++程序 (6) 运行NATIVE C/C++应用程序 (7) 在WINDOWS XP操作系统上构建ANDROID应用程序开发环境 (8) 编写ANDROID应用程序 (9) ANDROID SDK文件夹结构分析 (9) ANDROID源代码结构 (10) ANDROID应用程序生成 (10)

注: 如果你要创建Android的SDK,那么你必须安装JDK5,不要安装JDK6 $sudo apt-get install sun-java5-jdk 如果你使用apt-get下载安装程序时,发现某些安装包无法下载的情况, 那么你可以从网络上其它地方用其它的工具下载安装包,然后进行安装。我 通常是通过Windows上的迅雷下载,然后通过VMware中的文件共享传到Linux系统中。 我的电脑: 主系统:Windows XP 模拟器安装在Windows XP上 VMware中安装Linux:Ubuntu8.10 Android源码存放路径:~/mydroid 下载Android源码 在这里面以Ubuntu(x86)操作系统为例,说明下载Android的步骤: 下载必要工具: 下载GIT工具: $ sudo apt-get install git-core gnupg 下载JDK6: $ sudo apt-get install sun-java6-jdk 下载下列工具包:flex, bison, gperf, libsdl-dev, libesd0-dev, libwxgtk2.6-dev (optional), build-essential, zip, curl $ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev 下载Valgrind工具(可选): $ sudo apt-get install valgrind 安装Repo工具: 创建目录存放Repo: $ cd ~ $ mkdir bin $ export PATH=~/bin:$PATH 下载Repo: $ curl https://www.360docs.net/doc/f313735670.html,/repo >~/bin/repo

Java与Android开发学习指南

Java与Android开发学习指南 对于现在的IT界,最为火热的依然属于的移动互联网的开发。 2012年我们在不断进步,并且不断领先。

本套视频将采用最新的JDK 1.7,同时使用JUNO Eclipse进行开发讲解。 例如:实体层开发,需要类和表的映射,对于显示层的部分操作需要一些转换或处理等等。 马上这份笔记的完善版会经过清华大学出版社在2013年的上半年进行推出,而这本课堂笔记将和Java开发实战经典一起作为MLDN的入门书籍。 99%的课程,都为了方便学员复习提供了复习的视频资料。

https://www.360docs.net/doc/f313735670.html,/,在线课程。 同学一起去根据需求设计业务; 根据业务的功能讨论设计数据库; 后台的开发。前台的实现,远程接口的开发。 从各个公司而言,面试的要求是提高了。 对于代码而言,写代码不麻烦,最麻烦的是调试程序。 目的:是方便更多同学可以轻松的进入到Java开发行业,毕竟这个行业是相对稳定的。 2013年,而Java 是在1995年的时候出现。 最早的时候更多的是关注于服务器端的开发,但是对于客户端,开发的复杂度是很高的,并且受到环境的限制,所以最早的一些ERP系统,只能在电脑上完成,而有了Android/IOS之后,发现移动办公成为了可能。 不管如何操作,业务是最终必须要掌握的。

在整个市场70%的份额都被Android拿走了。这块蛋糕很大。 20左右是占了IOS。 历史: 2003年的时候,当时的手机系统:Symbian、Linux、Windows CE、MTK 2009年的时候,手机系统:Android(Linux)、IOS、Symbian、Windows Phone。项目的整体把握:项目的核心业务设计、架构。 最早的时候如果某一款软件需要被安放在手机里,需要找开发商,给他钱。。。 改了:开发商给钱推广。

Android开发说明文档

Android开发说明文档 一、开发环境的搭建过程: 第一步安装JDK,并在环境变量中配置相应的参数。 第二步安装开发工具,常用的开发工具有两种,一种是eclipse开发工具开发时需要导入ADT插件,一种是motodevstudio开发时不需要任何插 件。 第三步安装sdk(android开发环境),并在环境变量中配置相应的参数。 第四步测试环境是否搭建好,以此用命令javac、android –h进行测试,如果命令窗口中出现相应的说明,则证明开发环境搭建成功。 二、实现手机拍照功能: 1.UI界面设计 UI界面总共有两个,一个是初始化界面,一个是拍照界面。 初始化界面设计,如下图所示; 拍照界面设计,在此界面中,设计了两个按钮,一个是拍照按钮,一个是对焦按钮,拍照按钮用于进行对区域范围景色的拍摄,对焦按钮 是对所在视野区域焦距进行调节,拍摄窗口是横向显示方式,拍摄暂停 画面是花色的;

2.功能实现 当点击拍照按钮进入拍照界面,拍照界面显示当前的视野,然后点击对焦按钮进行焦距调整,然后点击拍照按钮进行拍照,当出现花色时证明拍照完成,拍照完成的图片保存在sd卡的根目录下。 三、实现百度地图获取地址信息: 1.获取百度api的key 在用百度账号进入,设置自己的key值,将key值添加到自己程序里的publicstaticfinal String strKey="iDneBU6NBrm9wyLxdOODPTM5";这段代码中。 2.UI界面设计 在此界面中用LinearLayout布局管理器,在此界面中设置六个编辑框用于获取当前地址所在信息,具体如下图所示。

最全的AndroidOpenGL开发文档

Android 3D 游戏开发教程 (Open Graphics Library) 目前最全的Android OpenGL文档 这几篇Android 3D游戏开发的文章原文出自一位德国人Martin 在https://www.360docs.net/doc/f313735670.html,写的文章,由lixinso翻译为中文。 拷贝于博客:https://www.360docs.net/doc/f313735670.html,/lixinso/archive/2010/01/30/5272927.aspx 第一部分首先介绍OpenGL相关的术语,并引导你开始3D开发的第一步。 这个关于3D游戏的系列的叫做V ortex . 这个教程主要focus在3D编程上,其他的东西比如菜单和程序生命周期虽然是代码的一部分,但是在这里不会被提到。 首先开始介绍OpenGL的术语。 顶点V ertex 顶点是3D空间中的一个点,也是许多对象的基础元素。在OpenGL中你可以生命少至二维坐标(X,Y),多至四维(X,Y,Z,W). w轴是可选的,默认的值是1.0. Z轴也是可选的,默认为0. 在这个系列中,我们将要用到3个主要的坐标X,Y,Z,因为W一般都是被用来作为占位符。vertex的复数是vertices(这对非英语母语的人来说比较重要,因为这容易产生歧义)。所有的对象都是用vertices作为它们的点,因为点就是vertex。 三角形Triangle 三角形需要三个点才能创建。因此在OpenGL中,我们使用3个顶点来创建一个三角形。多边形Polygon 多边形是至少有3个连接着的点组成的一个对象。三角形也是一个多边形。 图元Primitives 一个Primitive是一个三维的对象,使用三角形或者多边形创建。形象的说,一个有50000个顶点的非常精细的模型是一个Primitive,同样一个只有500个顶点的低模也叫做一个Primitive。 现在我们可以开始变成了。 创建一个工程交V ortex,activity也是这个名字。我们的工程应该大概是这个样子的:package com.droidnova.android.games.vortex; import android.app.Activity; import android.os.Bundle; public class V ortex extends Activity { private static final String LOG_TAG = V ortex.class.getSimpleName(); private V ortexV iew _vortexV iew; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); _vortexV iew = new V ortexView(this); setContentView(_vortexView);

Android开发技术文档

Android 开发最佳实践 从Futurice公司Android开发者中学到的经验。遵循以下准则,避免重复发明轮子。若您对开发iOS或Windows Phone 有兴趣,请看iOS Good Practices和Windows client Good Practices这两篇文章。 摘要 ?使用 Gradle 和它推荐的工程结构 ?把密码和敏感数据放在gradle.properties ?不要自己写 HTTP 客户端,使用Volley或OkHttp库 ?使用Jackson库解析JSON数据 ?避免使用Guava同时使用一些类库来避免65k method limit(一个Android程序中最多能执行65536个方法) ?使用 Fragments来呈现UI视图 ?使用 Activities 只是为了管理 Fragments ?Layout 布局是 XMLs代码,组织好它们 ?在layoutout XMLs布局时,使用styles文件来避免使用重复的属性 ?使用多个style文件来避免单一的一个大style文件 ?保持你的colors.xml 简短DRY(不要重复自己),只是定义调色板 ?总是使用dimens.xml DRY(不要重复自己),定义通用常数 ?不要做一个深层次的ViewGroup ?在使用WebViews时避免在客户端做处理,当心内存泄露 ?使用Robolectric单元测试,Robotium 做UI测试 ?使用Genymotion 作为你的模拟器 ?总是使用ProGuard 和 DexGuard混淆来项目 Android SDK 将你的Android SDK放在你的home目录或其他应用程序无关的位置。当安装有些包含SDK的IDE的时候,可能会将SDK放在IDE同一目录下,当你需要升级(或重新安装)IDE或更换的IDE时,会非常麻烦。此外,若果你的IDE 是在普通用户,不是在root下运行,还要避免吧SDK放到一下需要sudo权限的系统级别目录下。 构建系统

Android开发权威指南

《Android开发权威指南》内容上涵盖了用最新的Android版本开发的大部分场景。全书分4个部分,分别从Android基础介绍、环境搭建、SDK介绍,到应用剖析、组件介绍、综合实例演示,以及符合潮流的、最新的移动开发技术,如HTML5、OpenGL ES、NDK 编程、Android测试驱动开发等几个方面讲述。从技术实现上,讲解了6大完整综合案例及源代码分析,分别是新浪微博客户端、蓝牙聊天、全键盘输入法、月球登陆(游戏)、贪吃蛇(游戏)、笑脸连连看(游戏)。 《Android开发权威指南》注重对实际动手能力的指导,在遵循技术研发知识体系严密性的同时,在容易产生错误、不易理解的环节上配备了翔实的开发情景截图;并将重要的知识点和开发技巧以“多学一招”、“扩展学习”、“技巧点拨”等的活泼形式呈现给读者。在程序实例的讲解方面,主要将实例安插在Android开发的精髓知识章节,这为读者学习与实践结合提供了很好的指导。 《Android开发权威指南》配套光盘包含开发视频及全部源程序,指导读者快速、无障碍地学通Android实战开发技术。 《Android开发权威指南》适合具备一定软件开发经验、想快速进入Android开发领域的程序员,具备一些手机开发经验的开发者和Android开发爱好者学习使用;也适合作为相关培训学校的Android培训教材。 图书目录编辑 第一部分准备篇 第1章初识庐山真面目——Android开发简介 2 1.1Android的基本概念 2 1.1.1Android简介 2 1.1.2Android的版本 4 1.1.3Android的系统构架 5 1.1.4Android的应用程序框架 6 1.2JIL Widget介绍7 1.3小结8 第2章工欲善其事,必先利其器——搭建和使用Android开发环境9 2.1开发包及工具的安装9 2.1.1开发Android程序都需要些什么9 2.1.2安装JDK和配置Java开发环境10 2.1.3Eclipse的安装与汉化11 2.1.4安装AndroidSDK12 2.1.5安装Eclipse插件ADT13 2.2真实体验——编写第一个Android程序(随机绘制圆饼)15 2.2.1创建Android工程15 2.2.2在模拟器中运行Android程序17 2.2.3界面控件的布局19 2.2.4编写代码20

Android开发之旅

Android开发之旅:环境搭建及HelloWorld 博客地址:https://www.360docs.net/doc/f313735670.html,/icaihong Android知识团:https://www.360docs.net/doc/f313735670.html,/team/view/Android绿芽 引言 本系列适合0基础的人员,因为我就是从0开始的,此系列记录我步入Android开发的一些经验分享,望与君共勉!作为Android队伍中的一个新人的我,如果有什么不对的地方,还望不吝赐教。 在开始Android开发之旅启动之前,首先要搭建环境,然后创建一个简单的HelloWorld。本文的主题如下: 1、环境搭建 1.1、JDK安装 1.2、Eclipse安装 1.3、Android SDK安装 1.4、ADT安装 1.5、创建AVD 2、HelloWorld 1、环境搭建 1.1、JDK安装

如果你还没有JDK的话,可以去这里下载,接下来的工作就是安装提示一步一步走。设置环境变量步骤如下: 1.我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量: 2.JAVA_HOME值为:D:\Program Files\Java\jdk1.6.0_18(你安装JDK的目录) 3.CLASSPATH值 为:.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOM E%\bin; 4.Path: 在开始追加%JAVA_HOME%\bin; 5.NOTE:前面四步设置环境变量对搭建Android开发环境不是必须的,可以跳过。安装完成之后,可以在检查JDK是否安装成功。打开cmd窗口,输入java –version 查看JDK的版本信息。出现类似下面的画面表示安装成功了: 图1、验证JDK安装是否成功 1.2、Eclipse安装 如果你还么有Eclipse的话,可以去这里下载,下载如下图所示的Eclipse IDE for Java Developers(92M)的win 32bit版:

Android项目需求文档模板

需求文档说明书 一、前言 (3) 1.1项目介绍 (3) 1.2名词解释 (3) 1.3参考资料 (3) 二、需求概述 (3) 三、用户特点 (4) 3.1用户用例图 (4) 3.2适用人群 (4) 四、假定和约束 (4) 五、需求规定 (4) 5.1对功能的规定 (4) 5.2对性能的规定 (4) 5.3输入输出要求 (4) 5.3数据管理能力要求 (4) 5.3故障处理要求 (4) 5.3其它专门要求 (4) 六、功能结构图 ................................................................ 错误!未定义书签。 6.1功能介绍 (7) 6.2功能业务总流程图 (7) 七、功能需求分析 ............................................................ 错误!未定义书签。 7.1数据流图 (8) 7.1.1顶层数据流图 (8) 7.1.2功能级数据流图 (9) 7.1.3详细数据流图 (10) 7.2功能模块 (11) 7.2.1业务功能描述 (11) 7.2.2业务流程图描述 (11)

7.2.3相关角色及其执行的活动 (11) 7.2.4流程涉及步骤说明 (12) 7.2.5功能模块流程图 (13) 7.2.6流程涉及相关数据及规则 (13) 八、系统使用的软件与硬件环境说明............................... 错误!未定义书签。 8.1核心技术 (14) 8.2硬件环境与服务器环境: (14) 8.3客户端操作系统: (14) 九、原型界面.................................................................... 错误!未定义书签。 文档管理信息表 文档修改记录表

Android开发小知识_Android源代码下载指南(图解)

Android源代码下载指南(图解) Android学习到一定程度,就一定要多读代码多思考,Android源代码就是非常好的学习材料,本讲的内容很简单,就是把Android的源码先下载回来。我们知道Android的源代码是用Git这个分布式版本控制工具管理的,下载起来比较麻烦,我们在这里用图解的方式一步一步来,你肯定能学会。 第一步、安装VMWare我假设你在Windows下,而Android源代码在Linux下下载会更方面些。那么我们就装一个虚拟机来创造一个Linux环境。不熟悉的同学去Google一下“VMware Workstation 7.1安装” 第二步:安装Ubuntu10.04这一步不熟悉的同学去搜索”在VMware中安装Ubuntu10.04” 需要提醒一下,最好在图形界面方式安装,安装过程比较慢,需要等待的时候要有点耐心,我在95%的时候等了近20分钟^_^ 。 第三步:进入Linux ,打开终端哦,我还是配张图吧,蛋腚,我知道这个你会的^_^ 第四步:安装git和curl 在终端窗口敲下面的命令,下同

view source print? 1 sudo apt-get install git-core curl 如上图第一行,下面一路回车,安装完毕。 第五步:安装repo脚本 view source print? 1 curl https://www.360docs.net/doc/f313735670.html,/repo >~/repo

第六步:给repo可执行权限配图还是上面那张,仔细看一下 view source print? 1 chmod a+x ~/repo 第七步:新建一个目录mydroid , 然后进入该目录配图还是上面那张,仔细看一下 view source print? 1 mkdir mydroid view source print? 1 cd mydroid 第八步:repo初始化配图还是上面那张,仔细看一下 view source

Android开发工具手册

Android 开发工具用户手册 Version 1.0 2014-07-28

历史记录 Ver Data Author Brief Publish Memo 1.0 2014-07-28 LY

目录 1. 主要功能 (4) 1.1. 导入分区配置 (4) 1.2. 导出分区配置 (5) 1.3. 烧写一个或多个分区镜像 (6) 1.4. 切换 (6) 1.5. 低格 (6) 1.6. 烧录update.img (7) 1.7. 擦除Flash (7) 1.8. 解包update.img (7) 2. 常见问题 (8) 2.1. 下载项不存在 (8) 2.2. 加载固件失败 (8) 2.3. 校验芯片失败 (8) 2.4. 下载Boot失败 (9) 2.5. 读取设备参数失败 (9) 2.6. 下载固件或者分区镜像失败 (9) 2.7. 校验固件或者分区镜像失败 (9) 3. 注意事项 (9)

1.主要功能 1.1. 导入分区配置 每次随新工具发布的分区配置文件内容如上图,大部分情况下与项目的分区配置存在一定程度差异,此时用户可以通过在分区配置区域空白处右击鼠标,选择“导入配置”,加载之前保存的项目分区配置文件。如果想在工具启动时加载指定的分区配置文件,可以通过修改Config.ini文件中DEFAULT_IMAGE_CONFIG项。

1.2. 导出分区配置 用户完成分区配置后,可以将分区配置通过导出功能进行保存,在分区配置区域空白处点击“导出配置”,输入保存的文件名和目录,如果替换掉工具目录下的config.cfg文件,则可以在工具启动时加载当前保存的配置。

Android开发文档

Android Dev Doc Android 开发多使用内部类使用方便且效率高 UI方面的知识 一、在编写layout的xml文件时,一定要仔细!如果在报错的时候,如何解决? 解决:将xml仔细检查并保存后再运行。 二、在运行程序时,还未运行onCreate()方法之前就报错(MyAndroid(Project))! 原因:在用eclipse 新建的项目的AndroidManifest.xml 文件中的application节点中android:lable写了。去掉后就无错。(待验证!) 三、onCreateContextMenu -> 创建长按菜单键显示的菜单!处理菜单选择事件方法-> onContextItemSelected 四、在对数据库操作时,一定要记住open.. 五、Fragments 类似于Activity 生命周期有点类似。。。一个Activity中可以有很多个 Fragments,一个Fragments可以被多个Activity使用,要实现Fragments也必须去跟Activity 一样去集成父类。 六、两种方式将Layout中的XML转换为View https://www.360docs.net/doc/f313735670.html,youtInflater inflater = (强转)getSystemService(https://www.360docs.net/doc/f313735670.html,YOUT_INFLATER_SERVICE) inflater.inflater(layoutId,null); https://www.360docs.net/doc/f313735670.html,youtInflater inflater = LayoutInflater.from(this); final View textEntryView = inflater.inflate(https://www.360docs.net/doc/f313735670.html,yout.alert_dialog_text_entry, null); 七、Dialog的机制:当Activity中调用showDialog(int id)时会去回调onCreateDialog() 回调 执行完毕后执行onPrepareDialog()。 八、利用线程来实现ProgressBar 1.新建一个匿名类实现Runable接口,run方法里面来for循环progressBar的max value 2.在for内利用android.os.Handler类的实例的post方法来对progressBar实例的操作 (其中post的参数又是一个Runable的实现类-利用匿名类来实现run方法,在方法 内对progressBar的实例操作)。->注意:progressbar 的max越大越能看出效果。 九、得到NotificationManager 以及Notification的使用 1.在Activity中nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 2.new Notification(显示图片的ID,显示的文本,Notification显示的时间) 3.Notification的使用步骤: A.所有的Notification都是由NotificationManager来管理的,因此必须得到 NotificationManager的实例 B.构造一个Notification(注意setLatestEventInfo这个方法是用来:1:当展开 Notification时如何呈现Notification 2:当用户单击时如何处理Notification) C.利用NotificationManager的实例来启动Notification 4. 十、D

安卓开发初级教程

Android程序开发初级教程(一) 开始 Hello Android 平台简介 令人激动的Google手机操作系统平台-Android正式发布了,这是一个开放源代码的操作系统,内核为Linux. 作为开发者,我们所关心的是这个平台的架构以及所支持的开发语言。下面是这个平台的架构模型: 这个平台有以下功能:

+ Application framework: 可重用的和可替换的组件部分,在这个层面上,所有的 软件都是平等的。 + Dalvik virtul machine: 一个基于Linux的虚拟机。 + Integrated browser: 一个基于开源的WebKit引擎的浏览器,在应用程序层。 + Optimized graphics: 包含一个自定义的2D图形库和基于OpenGL ES 1.0 标 准的3D实现。 + SQLite: 数据库 + Media support: 通用的音频,视频和对各种图片格式的支持(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) + GSM Telephony: GSM 移动网络, 硬件支持。 + Bluetooth, EDGE, 3G, and WiFi: 都依赖于硬件支持。 + Camera, GPS, compass, and accelerometer: 都依赖于硬件支持。 +Rich development environment: 包含一套完整的开发工具集,方便跟踪调试,内存检测和性能测试,而且提供了Eclipse的插件。 下面我们就来亲身体验一下Android程序的开发之旅。 先介绍一下开发环境,下面是对系统及相关软件的版本要求: 操作系统: Windows XP or Vista Mac OS X 10.4.8 or later (x86 only)

Android开发和调试中文文档

Android中文文档:开发和调试 在eclipse上开发Android应用程序 在用eclipse IDE开发android应用程序之前,你首先要创建一个Android工程,并且建立一个启动配置,在此之后你才可以开始编写,运行,以及调试你的应用程序。 以下章节是假设你已经在eclipse环境中安装了ADT插件,如果你没有安装,请安装之后再使用以下说明。参考安装eclipse 插件(ADT) 创建一个android工程 ADT提供了一个新的工程向导,你可以快速的创建一个新的工程或者在现有代码上创建工程。创建工程的步骤如下: 选择File > New > Project 选择 Android > Android Project, 然后按下 Next 选择项目内容: 选择 Create new project in workspace,为编码创建一个全新的工程。 输入工程名称(project name),基础软件包的名称(the base package name),以及Activity 类的名称。以创建stub .java文件等文件和程序名字。 选择Create project from existing source ,为已有代码创建一个工程。如果你想编译运行SDK中提供的示例程序,可以使用这个选项。示例程序的存放在SDK的samples/目录下。 浏览包含已有代码的目录,点击ok,如果目录中包含有可用的android manifest 文件,ADT 将为你填写合适的软件包,activity,和应用程序名称。 按下Finish. ADT插件会根据你的工程类型创建合适的文件和文件夹,如下: src/ 包含stub .java Activity文件的文件夹. res/ 资源文件夹. AndroidManifest.xml 工程清单. 创建一个启动项 能够在eclipse上运行调试应用程序之前,你必须为它创建一个启动项。启动项指定哪个工程将被启动,哪个activity开始工作,以及使用哪些模拟器选项等。 按照以下步骤为Eclipse版本的应用程序创建合适的启动项: 打开启动项管理工具。 在 Eclipse 3.3 (Europa)的版本中,酌情选择 Run > Open Run Dialog... or Run > Open Debug Dialog... 。

Android Studio App开发开发文档

使用Android Studio开发APP 一、简介: 二、利用Android Studio开发APP 1、开发环境搭建 (1)安装配置Java JDK (2)暗转Android Studio软件 软件下载链接地址: https://https://www.360docs.net/doc/f313735670.html,/dl/android/studio/install/3.1.2.0/android-studio-ide-173.4720617-win dows.exe (3)可以安装一个APP模拟器调试 安装JDK(Java Development Kit) JDK 是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。进行java开发,首先要安装,安装了后还要进行环境变量配置 1、环境变量配置: (1)系统变量→新建JAVA_HOME变量, 变量值填写的安装目录(例如E:\Java\jdk1.7.0)。 (2)系统变量→寻找Path变量→编辑, 在变量值最后输入%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; (注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)。 (3)系统变量→新建CLASSPATH变量 变量值填写.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; (注意最前面有一点)。 系统变量配置完毕。 2、检验 检验是否配置成功运行输入-version(java和-version之间有空格) “开始”-->“运行”-->输入“”-->"Enter",如果能正常打印用法说明配置成功! 三、开发一个Demo 参考:https://https://www.360docs.net/doc/f313735670.html,/xiadewang/p/7820377.html 开发步骤图如下:

相关主题
相关文档
最新文档