十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Android SDK 目录下有很多文件夹,主要都是干什么的呢?
创新互联-专业网站定制、快速模板网站建设、高性价比利通网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式利通网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖利通地区。费用合理售后完善,十年实体公司更值得信赖。
1. add-ons 这里面保存着附加库,比如google Maps,当然你如果安装了OPhone SDK,这里也会有一些类库在里面。
2. docs 这里面是Android SDK API参考文档,所有的API都可以在这里查到。
3. market_licensing 作为Android Market版权保护组件,一般发布付费应用到电子市场可以用它来反盗版。
4. platforms 是每个平台的SDK真正的文件,里面会根据API Level划分的SDK版本, 这里就以Android 2.2来说,进入后有一个android-8的文件夹,android-8进入后是Android 2.2 SDK的主要文件,其中ant为ant编译脚本,data保存着一些系统资源,images是模拟器映像文件,skins则是Android模拟器的皮肤,templates是工程创建的默认模板,android.jar则是该版本的主要framework文件,tools目录里面包含了重要的编译工具,比如aapt、aidl、逆向调试工具dexdump和编译脚本dx。
5. platform-tools 保存着一些通用工具,比如adb、和aapt、aidl、dx等文件,Android123提示,这里和platforms目录中tools文件夹有些重复,主要是从android 2.3开始这些工具被划分为通用了。
6. samples 是Android SDK自带的默认示例工程,里面的apidemos强烈推荐初学者运行学习,对于SQLite数据库操作可以查看NotePad这个例子,对于游戏开发 Snake、LunarLander都是不错的例子,对于Android主题开发Home则是android m5时代的主题设计原理。
一、在手机上直接搜索
安卓系统一般都有文件管理,进入手动搜索,最好有一定的英文基础,这样手动搜索就会快一点;
二、连接电脑,启动USB存储,在电脑搜索功能中搜索,当然像在手机中手动搜索也可以。
在windows7操作系统Android studio中,有两种办法进行查找文件内容
1、查找当前文件内容 CTRL+F
2、查找项目所有文件内容 CTRL+SHIFT+F
a、首先使用Android studio打开一个android 项目,如下图:
b、按下 CTRL+F或者CTRL+SHIFT+F 会出现一个搜索界面,如下图:
c、在搜索栏中输入要搜索的内容,如下图:
android导出word文档有以下方法:
使用第三方软件:Office Word等。
备忘录直接打印为PDF,如需其他格式须从PC端处理。
数字内容的存储,分发和娱乐服务。用户为资源社区的注册用户。
1.1. 编写目的
本文档的目的,旨在规范软件开发,推动项目有序正常的进行,使相关人员遵守统一的规范。节省制作相关文档的时间,降低系统实现的风险,加快项目实施进度,做到系统设计的规范性和全面性,以利于系统的设计、实现、测试、维护和版本升级。
1.2. 项目范围
本文档用于软件设计阶段的概要设计,它的上游(依据的基线)是项目需求分析书,它的下游是项目详细设计说明书,并为详细设计说明书提供测试的依据。
软件概要设计的范围是:客户端软件系统总体结构、外部接口、主要部件功能分配、全局数据结构以及部件之间的接口等方面的内容。
2. 软件概述
2.1. 爱私货概括
本文档用于软件设计阶段的概要设计,它的上游(依据的基线)是项目需求分析书,它的下游是项目详细设计说明书,并为详细设计说明书提供测试的依据。
2.2. APP功能
本文档用于软件设计阶段的概要设计,它的上游(依据的基线)是项目需求分析书,它的下游是项目详细设计说明书,并为详细设计说明书提供测试的依据。
android上查阅word类型文档的方式主要有几种,下载诸如wps,office等应用,用户可以直接打开需要查看的word文档,对于应用开发者来说,如何在自己的应用中集成word文档查阅功能,使自己的app不受限于第三方应用有没有安装,有时候还是需要考虑的。
集成app阅读word功能也可以通过几种方式实现,例如购买专门的sdk包,像Aspose等(money啊)或者服务器端处理成图片或者html,然后android端去请求访问等方式。对于大部分个人开发者而言,这两种方式就显得比较重量级了。
下面介绍两种专门解析docx文件的方式:docx4j 以及poi
Docx4j
github地址:
这个是官网demo,基本可以直接使用,解析出来的格式比较全,样式也比较接近原文档,就是解析速度令人不敢恭维,手机上测试的话,一般一份儿docx文档都需要30s以上甚至更多,有时候测试文档明明就只有几十k大小而已,对于比较大,比较复杂的文档,时间就更是让人崩溃。解析速度不是令人满意。
解析测试中遇到的bug
1.表格丢失,内容丢失:内嵌表格(表格中还有表格的这种)的内容和样式会有部分丢失现象
2.表格(又是我?)样式:假如文档中的表格在word文档中排版时超出了该文档的边界线,你会发现超出边界的内容又不见了
3.目录乱码:如果文档中有目录,目录会被加上一些超链接,需要手工处理去掉
4.图片无法解析:有一些格式的图片无法解析,比如EMF,WMF这种类型的
5.批注无法显示:目前没有找到批注显示的地方,暂且算丢失吧,后面在试试
6.。。。其它暂时还没被发现的问题
POI
poi是apache的一个开源项目,不多说,直接上官网去下载就可以
官网地址:
如果你是android studio用户:那就很简单了
只需要引入依赖(版本号不一定哦,gradle会自己把相关依赖包下载到位):
compile 'fr.opensagres.xdocreport:org.apache.poi.xwpf.converter.xhtml:1.0.5'
那如果你是eclipse用户(伙计,赶紧用studio吧)
需要手工引入以下jar包,包括:
poi , poi-ooxml , ooxml-schema,org.apache.poi.xwpf.converter.xhtml,org.apache.poi.xwpf.converter.core
实现代码如下
{
InputStream is = new FileInputStream(file);
XWPFDocument docx = new
XWPFDocument(is);
OutputStream os = new ByteArrayOutputStream();
String imgDesPath = "/sdcard/img";
File imgFile = new File("/sdcard/img");
this.baseUrl = this.getDir("image", Context.MODE_PRIVATE).toURL().toString();
if (!imgFile.exists()) {
file.mkdirs();
}
poi解析的问题
速度比docx4j要稍快一点,会有文档内容解析不全样式丢失的情况
流程
调用接口将docx转化为html,然后app中通过webview加载该html即可显示
转化代码如下(我就想问下,这代码格式到底该怎么调啊~好烦躁):
try {
InputStream is = new FileInputStream(file);
XWPFDocument docx = new
XWPFDocument(is);
OutputStream os = new ByteArrayOutputStream();
String imgDesPath = "/sdcard/img";
File imgFile = new File("/sdcard/img");
this.baseUrl = this.getDir("image", Context.MODE_PRIVATE).toURL().toString();
if (!imgFile.exists()) {
file.mkdirs();
}
XHTMLOptions options = XHTMLOptions.create().URIResolver(new BasicURIResolver(imgDesPath));
options.setExtractor(new FileImageExtractor(imgFile));
options.setIgnoreStylesIfUnused(false);
options.setFragment(true);
XHTMLConverter.getInstance().convert(docx, os, options);
**os.write("/sdcard/xxx/html文件")**
} catch (Exception e) {
Log.d(TAG, "catch " + e.getMessage());
}
webview 里面直接load 上面生成的html文件就可以了
软件需求文档格式的标准写法\x0d\x0a1.引言\x0d\x0a \x0d\x0a1.1 编写目的\x0d\x0a \x0d\x0a· 阐明开发本软件的目的;\x0d\x0a \x0d\x0a1.2 项目背景\x0d\x0a \x0d\x0a· 标识待开发软件产品的名称、代码;\x0d\x0a \x0d\x0a· 列出本项目的任务提出者、项目负责人、系统分析员、系统设计员、程序设计员、程序员、资料员以及与本项目开展工作直接有关的人员和用户;\x0d\x0a \x0d\x0a· 说明该软件产品与其他有关软件产品的相互关系。\x0d\x0a \x0d\x0a1.3 术语说明\x0d\x0a \x0d\x0a列出本文档中所用到的专门术语的定义和英文缩写词的原文。\x0d\x0a \x0d\x0a1.4 参考资料(可有可无)\x0d\x0a \x0d\x0a 列举编写软件需求规格说明时所参考的资料,包括项目经核准的计划任务书、合\x0d\x0a \x0d\x0a同、引用的标准和规范、项目开发计划、需求规格说明、使用实例文档,以及相关产品\x0d\x0a \x0d\x0a的软件需求规格说明。\x0d\x0a \x0d\x0a 在这里应该给出详细的信息,包括标题、作者、版本号、发表日期、出版单位或资\x0d\x0a \x0d\x0a料来源。\x0d\x0a \x0d\x0a2.项目概述\x0d\x0a \x0d\x0a 2.1 待开发软件的一般描述\x0d\x0a \x0d\x0a 描述待开发软件的背景,所应达到的目标,以及市场前景等。\x0d\x0a \x0d\x0a 2.2 待开发软件的功能\x0d\x0a \x0d\x0a 简述待开发软件所具有的主要功能。为了帮助每个读者易于理解,可以使用列表或\x0d\x0a \x0d\x0a图形的方法进行描述。使用图形表示,可以采用:\x0d\x0a \x0d\x0a · 顶层数据流图;\x0d\x0a \x0d\x0a · 用例UseCase图;\x0d\x0a \x0d\x0a · 系统流程图;\x0d\x0a \x0d\x0a · 层次方框图。\x0d\x0a \x0d\x0a 2.3 用户特征和水平(是哪类人使用)\x0d\x0a \x0d\x0a 描述最终用户应具有的受教育水平、工作经验及技术专长。\x0d\x0a \x0d\x0a 2.4 运行环境\x0d\x0a \x0d\x0a 描述软件的运行环境,包括硬件平台、硬件要求、操作系统和版本,以及其他的软\x0d\x0a \x0d\x0a件或与其共存的应用程序等。\x0d\x0a \x0d\x0a 2.5 条件与限制\x0d\x0a \x0d\x0a 给出影响开发人员在设计软件时的约束条款,例如:\x0d\x0a \x0d\x0a · 必须使用或避免使用的特定技术、工具、编程语言和数据库;\x0d\x0a \x0d\x0a · 硬件限制;\x0d\x0a \x0d\x0a · 所要求的开发规范或标准。\x0d\x0a \x0d\x0a3.功能需求\x0d\x0a \x0d\x0a 3.1 功能划分\x0d\x0a \x0d\x0a 列举出所开发的软件能实现的全部功能,可采用文字、图表或数学公式等多种方法\x0d\x0a \x0d\x0a进行描述。\x0d\x0a \x0d\x0a3.2 功能描述\x0d\x0a \x0d\x0a对各个功能进行详细的描述。\x0d\x0a \x0d\x0a4.外部接口需求\x0d\x0a \x0d\x0a4.1 用户界面\x0d\x0a \x0d\x0a对用户希望该软件所具有的界面特征进行描述。以下是可能要包括的一些特征:\x0d\x0a \x0d\x0a· 将要采用的图形用户界面标准或产品系列的风格;\x0d\x0a \x0d\x0a· 屏幕布局;\x0d\x0a \x0d\x0a· 菜单布局;\x0d\x0a \x0d\x0a· 输入输出格式;\x0d\x0a \x0d\x0a· 错误信息显示格式;\x0d\x0a \x0d\x0a建议采用RAD开发工具, 比如Visio,构造用户界面。\x0d\x0a \x0d\x0a4.2 硬件接口\x0d\x0a \x0d\x0a 描述系统中软件产品和硬件设备每一接口的特征,以及硬件接口支持的设备、软件与硬件接口之间,以及硬件接口与支持设备之间的约定,包括交流的数据和控制信息的性质以及所使用的通信协议。\x0d\x0a \x0d\x0a4.3 软件接口\x0d\x0a \x0d\x0a 描述该软件产品与其有关软件的接口关系,并指出这些外部软件或组件的名字和版本号。比如运行在什么操作系统上,访问何种类型的数据库,使用什么数据库连接组件,和什么商业软件共享数据等。\x0d\x0a \x0d\x0a4.4 通信接口\x0d\x0a \x0d\x0a 描述和本软件产品相关的各种通信需求,包括电子邮件、Web浏览器、网络通信协议等。\x0d\x0a \x0d\x0a4.5 故障处理\x0d\x0a \x0d\x0a 对可能的软件、硬件故障以及对各项性能而言所产生的后果进行处理。\x0d\x0a \x0d\x0a5.性能需求\x0d\x0a \x0d\x0a5.1 数据精确度\x0d\x0a \x0d\x0a输出结果的精度。\x0d\x0a \x0d\x0a 5.2 时间特性\x0d\x0a \x0d\x0a 时间特性可包括如下几方面\x0d\x0a \x0d\x0a ·响应时间;\x0d\x0a \x0d\x0a ·更新处理时间;\x0d\x0a \x0d\x0a ·数据转换与传输时间;\x0d\x0a \x0d\x0a ·运行时间等。\x0d\x0a \x0d\x0a 5.3 适应性\x0d\x0a \x0d\x0a 在操作方式、运行环境、与其他软件的接口以及开发计划等发生变化时,软件的适应能力。\x0d\x0a \x0d\x0a6.其他需求\x0d\x0a \x0d\x0a列出在本文的其他部分未出现的需求。如果不需要增加其他需求,可省略这一部分。\x0d\x0a \x0d\x0a7.数据描述\x0d\x0a \x0d\x0a 7.1 静态数据\x0d\x0a \x0d\x0a 7.2 动态数据\x0d\x0a \x0d\x0a包括输入数据和输出数据。\x0d\x0a \x0d\x0a 7.3 数据库描述\x0d\x0a \x0d\x0a 给出使用数据库的名称和类型。\x0d\x0a \x0d\x0a 7.4 数据字典\x0d\x0a \x0d\x0a对于数据流图、层次方框图中出现的所有图形元素在数据字典中都要作为一个词条加以定义,使得每一个图形元素都有唯一的一个清晰明确的解释。\x0d\x0a \x0d\x0a数据字典中所有的定义必须是严密的、精确的,不可有二意性。\x0d\x0a \x0d\x0a 7.5 数据采集\x0d\x0a \x0d\x0a ·列出提供输入数据的机构、设备和人员\x0d\x0a \x0d\x0a ·列出数据输入的手段、介质和设备;\x0d\x0a \x0d\x0a ·列出数据生成的方法、介质和设备。\x0d\x0a \x0d\x0a8.附录\x0d\x0a \x0d\x0a 包括分析模型,待定问题图表等。