Home> Tags > 编程

Post about "编程"

Android应用开发环境搭建指引

2012年02月04日 分类目录 :android技术 0

       由于工作的缘故,现在开始全面进入Android应用开发领域了。之所以在标题上加上“应用”两字,是因为本文基于Windows平台撰写,而Windows 平台无法进行Android编译,因此只能进行应用开发。如果还需要接触Android 源代码的话建议在Linux环境上搭建开发平台。

一    基础资源下载安装:

  1. 安装JDK6以上版本,推荐安装JDK6.0.27,这个版本比较稳定。下载地址为:http://www.oracle.com/technetwork/java/javase/downloads/index.html

            安装的时候建议直接安装在根目录下,不要安装在默认的Program Files目录下。之所以这样是因为Android是基于Linux的,Linux路径不支持空格字符,所以可能会产生问题

  2. 下载Eclipse, 推荐下载Eclipse for java developers版,下载地址:  http://www.eclipse.org/downloads/ (64位系统用户请下载对应版本)
  3. 下载Android SDK,推荐下载安装版,下载地址:http://developer.android.com/sdk/index.html
  4.         同样建议安装在根目录下,不要安装在Program Files目录下。

二    系统环境变量配置:

  1. JDK的配置请参阅《配置Java编译环境
  2. 在PATH中配置Android SDK工具,添加以下两个目录:X:\android-sdk\platform-tools;X:\android-sdk\tools。注:“X:\”部分请根据实际情况修改

        配置完之后打开CMD,输入java -Version 和android -h两个命令,检查是否配置成功。

三    Android SDK下载:

        之前我们已经安装了Android SDK,但是事实上里面是空的,我们并没有下载SDK,现在我们在准备工作完成的基础上可以下载SDK了。打开SDK Manager.exe,当Fetching完了之后我们可以看到列表中有一系列的资源可供下载:

       其中Tools文件夹中的2个必须安装,下面的N多不同版本的Android SDK则选其一即可,目前最新的是Android 4.0.3,但是对于我们来说,这个并不需要跟进,选择装机量较大的2.2或2.3即可。等将来4.0成为主流后再跟进也不迟。

四    ADT For Eclipse下载安装

       启动Eclipse(Win7用户请使用管理员身份),进入插件安装对话框(Menu栏Help->Install New Software)

        在地址栏输入 https://dl-ssl.google.com/android/eclipse/,并按回车键,稍等一会就会加载出可安装插件列表,全部安装上吧。

这里还有一点需要注意的,由于安装ADT的时候还需要一些依赖插件,因此必须确保Available Software site列表中http://download.eclipse.org/releases/indigo(旧版本eclipse用户请把indigo修改为相应版本)处于选中状态,如果列表中没有则自行ADD一个。

安装完成后重启Eclipse,启动后应该会弹出一个android sdk的配置窗口,把其中sdk路径改为之前安装的路径即可。

五    Android模拟器配置

        为了方便开发者进行调试,Android SDK还提供了一个模拟器工具,我们编译好的Android应用可以直接在这个模拟器中进行测试,而不需要放到真机上。打开AVD Manager工具,点New按键,进行简单的配置之后就可以创建出一个模拟环境了。

 

后记

        至此,Windows下Android应用开发环境就搭建好了,快去创建一个Hello World项目体验一下吧。

, , ,

实习第一周

2012年01月06日 分类目录 :个人日记 3

      2012年的元旦刚过,我以全新的面貌开始了新的一年。1月4日,新年的第一个工作日,我成为了早高峰时间挤地铁的上班族的一员。在去公司报道前,我们一伙同学都满怀希望能够从事Java开发项目或Android项目,可没想一伙8人,只有3个从事的是java项目,其余5个则被分配到了C\c++和VB项目组,而我则是被分在C\C++项目组的其中一人。无奈,之前一丁点C语言的内容都没学过,现在只能从头开始来过了。

      要从头学C还不算完,由于是家日企,使用的操作系统以及软件全都是日文界面的,对日文一窍不通的我来说,这纯属折磨,还好对XP的界面还比较熟悉,而且对软件的界面布局有一定的灵性,稍微能够应付一下。不过,由于公司内部资料、式样书等全是日文的,因此从零开始学日语也是逃不了的一项任务了。幸好公司内部安排了日语培训计划,每天早上给我们这些新员工上一小时日语课,而且老师还是个美女哟(总经理秘书怎能丑呢?)!

      对于C语言的学习,还好已经有了一定的编程基础,虽然C和Java有着一定的区别,但是也能较为容易地上手。这几天下载了谭浩强版的C语言教程,一章章的看过去,打打上面的代码,做做上面的练习,应该能够应付吧。

      数数这半年我的工作量,突然发现量非常之大:首先要应付两月份的学位英语考试,英语本来就是我的老大难问题,更何况这还是学位英语,看看那些单词,什么官僚制啊之类的,动辄20来个字母组成的单词着实让人头大;其次是毕业论文+英文文献的翻译;再加上现在加出来的C语言和日语,这半年要学的东西真是有点多了,现在才刚开始,虽然不能保证能够顺利完成这些所有的学习任务,但是始终还是要去担心一下的,能否兼顾这些所有呢?

Eclipse项目快速加载多个第三方架包

2011年11月21日 分类目录 :程序语言 1

       之前的日志《让eclipse创建Java下面股时自动加载第三方架包》提到了通过将架包复制到如java\lib、tomcat\lib目录下来实现创建项目时自动加载第三方架包,但是由于这种方法会使得创建的每一个新项目都会加载所有复制到相关目录下的架包,因此只适用于如jdbc、log4j之类使用率较大的架包。而对于其他一些架包,如若希望能够快速添加,则建议通过eclipse的配置实现。

       也许我们会有这样的经历:手头上的几个项目需要用到多个架包,而这些架包又放在不同的文件夹中,当我们为这些项目添加架包时,需要多次进入这些文件夹将架包添加进项目中,而这些工作都是重复的,会消耗不少时间的。因此,如若我们实现创建好一个架包库,那么每次都只需要添加这个库就能够将分属于不同文件夹的架包一次性加入进来了。以优秀的ORM框架Hibrenate为例,当我们从官网上下载好压缩包并解压后,我们可以看到在根目录下有一个hibrenate3.jar,此外还有一个lib文件夹,该文件夹内又有4个子文件夹,内有各类必须使用的和可选用的架包,当创建Hibrenate项目时,就需要将不同文件夹中的架包逐个添加进来。

       幸好,eclipse的配置中有用户库(user library),可以让我们创建不同的架包集合,以提升加包效率。

user library配置过程

1.点击菜单栏Window->Preferences进入配置界面。

2.依次展开java->build path->user library,在右侧配置界面中点New…

3.在弹出的交互窗口中填入自定义的库名,此处以hibernate3为例,然后点确定。(复选框建议不要选中)

4.现在我们就可以看到列表中出现了刚刚添加的库,选中该库,然后点Add JARs…

5.在弹出的文件选择框中将各相关架包加进来。

PS:需要将多个文件夹中的架包添加进来则重复4、5两步。

user library的使用

        当我们创建好库之后,就可以方便的在项目中添加架包了。这里我们创建了一个名为Test的Java项目以作示例:

1.在package explorer界面中右键该项目,在弹出菜单中展开build path菜单项,点击Add library开始添加架包库。

2.此时会弹出一个对话框,可以选择不同类型的架包库,由于我们之前创建的是user library,因此这里选择user library

3.现在会弹出一个对话框里面有所有我们创建的user library,选中需要使用的架包集合,然后点Finish。

4.这样一来,相关的架包就都被加入到该项目的构建路径中去了。

总结

        这个方法可以极大简化我们的工作,但是也有一点缺陷,由于通过这个方法添加的架包是直接进入构建路径,因此当我们把项目导出的时候,相关架包并不会一起导出来,也就是说,当我们在其他电脑上打开该项目的时候,我们必须重新配置一下user library。

, ,

让eclipse创建java项目时自动加载第三方架包

2011年11月05日 分类目录 :程序语言 1

      在开发java项目时,总有那么一些第三方类是需要经常使用的,如dom4j.jar、log4j.jar、数据库连接类等。通常,我们需要在eclipse里新建好项目之后,再手动将这些需要用到的包加入到项目中。对于开发产品的人来说,因为不需要频繁新建项目,即使是手动加入也就一次性的事情;但是对于学习者来说,由于要频繁创建新的练习项目,这么一来,就需要多次加包了,有时更会忘记把包加入到构建路径中。那么,是否能够有一个机制,让我们新建项目时,可以自动加入这些包呢? 

      在新建项目时,我们会在项目资源列表中看到一堆jar包,这些都是javaSE自带的包,如果看过jdk文件夹的话就会发现这些包都放在%java_home%/lib中;而当我们创建java web项目时,又会有一些javaEE的jar包,而它们则通常位于使用的web容器的lib目录下(如果tomcat/lib)。既然这样,也就是说,如果我们把常用的包放入这些目录,那么当我们新建项目时,也就会一并加入这些包了。比如说,我们可以把数据库连接的jar包放入tomcat/lib中,那么在新建web项目时就会加入,而java项目不会。 

       对于使用windows作为开发环境的开发者来说,只要直接将jar包放入相应的文件夹就可以了,没有任何技术含量。而用linux作为开发环境的开发者就相对麻烦了点,但是,作为一个开发者来说,如果这些小事都不愿意去做,那么又如何能够成功呢? 

      当我们观察jdk或tomcat的文件夹时,我们会发现lib目录下的那些jar包其实只是一个链接,Linux有着一套非常规范的文件归类体系。因此,通过软件源获取到的所有jar包都会统一放置在/usr/share/java/中,然后在需要用到它的地方安置链接。清楚了这点,我们就可以来进行操作了。 

      照例打开终端(Linux中很多操作都得用它来完成,还是趁早习惯地好),输入相关命令:

sudo cp your-jar-file-path /usr/share/java/


sudo ln -s /usr/share/java/your-jar-file /usr/tomcat*/lib/your-jar-file


      至此,基本的设置就完成了,接下来创建的新项目中不出意外就会自动加入我们设置了的第三方jar包了。 
      在不清楚其中的执行流程的情况下,我们可能无从下手,但是一旦找到了突破口,那就将势如破竹,一帆风顺。


>

, , ,

Linux禁止apache、mysql、tomcat自动启动

2011年11月04日 分类目录 :linux&软件技术 0

最近完成了web开发环境在Linux中的搭建,由于图省心,就直接在源中安装一系列的软件,包括apache、mysql、tomcat等。不过,之后就发现了一个小问题,由于我是通过源安装的,所以这几个软件的默认设置都是开机自动启动,而我并非一直需要用到它们。虽然对于现在的电脑性能来说,让它们一直运行在那里并不拖累性能,但是这总让人不舒服,因此就将它们禁止掉,当需要时才启用了。

其实,方法很简单,在终端中输入以下命令即可:

sudo update-rc.d -f apache2 remove

sudo update-rc.d -f tomcat* remove //*替换为你安装的tomcat版本 

而mysql就相对烦了那么点:

sudo service mysql stop

sudo gedit /etc/mysql/mysql.conf 

start on (net-device-up
and local-filesystems
and runlevel [2345])
改为 start on runlevel [!0123456]

, , ,

Linux下解决MySQL中文乱码问题

2011年11月03日 分类目录 :linux&软件技术 0

对于数据库应用来说,编码是一个非常讨厌的障碍。最近使用eclipse做一个电子商务网站的作业,当我创建了sql文件并执行之后,总会暴出一些稀奇古怪的错误,导致sql执行中断,而当我把同样的代码直接在MySQL终端中执行时,却又能顺利执行(当然,偶尔也会有怪问题出现)。痛苦了许久,总算是找到了问题之所在。这一切都是编码惹的祸!

当我从源中安装好MySQL之后,遗忘了编码的设置,因此当往数据库插入带中文字符的数据之后,就会因编码问题出现乱码、问号、或者就像是我遇到奇怪错误的现象。当我想起这茬事之后,就赶忙弥补这个低级错误,最终验证也解决了乱码的问题。

由于之前曾在Win7中安装过一次MySQL,当时曾修改过一次相关配置,因此想着Linux下应该也差不多,就跑去MySQL安装的目录找配置文件了。MySQL在Windows中的配置文件为“my.ini”,而在Linux中则是my.cnf。

遵照Linux的文件结构习惯,my.cnf位于/etc/mysql/目录下,在终端中使用”sudo gedit /etc/mysql/my.cnf”命令打开该文件,然后在[client]和[mysqld]下添加“default-character-set=utf8”。添加完之后关闭编辑器,重启MySQL,这就搞定了。现在可以试着创建一个表,并插入一些中文内容了。

更新:刚忘了说了,修改前创建的表中的中文依然会是乱码,不会自动更正。需要在mysql中执行以下sql语句来手动更正:

ALTER   TABLE   tbl_name   CONVERT   TO   CHARACTER   SET utf8

, ,

JAVA程序员帮助文档查看利器:GroovyHelp

2011年08月19日 分类目录 :linux资源| Windows资源 2

自从开始学java之后,有一件事一直让我很纠结,这就是查看帮助文档不是很方便。java的帮助文档大多是javadoc制作的,通常提供的是一个压缩包,里面是一堆网页文件,这种查看方式中搜索功能比较弱,所以很不方便。因此不得不去找一些第三方制作的chm格式的文档,然而,这种文档在linux系统下查看却又有些不友好。因此,找到一个在windows和Linux都好用的帮助文档成了我最大的愿望。

昨天,照例流量开源社区时,发现了一款名为GroovyHelp的软件,其实在以前逛网站时也多次见到它,但是一直没有在意,昨天点进去看了下详细介绍,没想到这一看让我找到了好宝贝。正所谓好东西不能藏着掖着,得拿出来分享一下,因此,小撰此文推介一下。

GroovyHelp是一款帮助软件,它能够帮助Java开发人员方便快速地查找Javadoc文档并对其进行高效管理,从此无需苦寻chm格式的帮助文档了。

GroovyHelp能够帮助Java开发者快速查阅Javadoc帮助文档,主要特性如下所示:
* 根据输入关键字,查找类,接口,方法等帮助信息(支持模糊查询)
* 支持全文检索,并高亮搜索结果(支持模糊查询)
* 以树型结构完整展现文档的整体结构及文件结构
* 支持源码关联,即查看文档所对应的源码,并语法高亮显示源码
* 支持JDK1.4+(包括JDK1.4)自带的Javadoc生成的帮助文档
* 无需解压文档及源码ZIP压缩包,节省磁盘空间
* 用户可以自由选择所需的jre1.6.0+(自己安装的jre,或者GroovyHelp提供的jre)

由于它自身也是由java编写,因此有着java的跨平台特性,我们可以在各个操作系统中使用它。不过在使用过程中有一个需要注意的地方,由于它是在32位环境下编写的,使用的swt类也是32位的,因此,和我一样的64位用户需要自己去下载swt的64位版,替换应用目录下lib\endorsed的SWT类。由于只能在eclipse官网上下载,而该文件藏得比较深,这里我提供一个网盘下载:
    swt-3.7-gtk-linux-x86_64.jar:盛大网盘115网盘
    swt-3.7-win32-win32-x86_64.jar:盛大网盘115网盘

这个应用的使用也是非常简单,解压后在系统环境变量中添加GROOVYHELP_JAVA_HOME,值为jdk所在路径。

启动后点击菜单栏docs中manage docs,选择你需要添加的文档即可,它会自动读取文件名,如果你还需要加上源码查看的话,可以同时添加源码压缩包。建议把文档和源码都置于同一个目录下,方便管理。对了,路径中不能出现中文,否则会有问题。

等创建好索引之后就可以在应用中方便的查看、管理文档及源码了,相信它可以给开发者提供最大的帮助吧?

       由于刚刚开始使用它,还有一些不熟悉,不过在这点时间里,发现了一些比较郁闷的现象。并非所有第三方类库的开发商会提供帮助文件的下载,通常只提供在线版,这样一来,在断网情况下仍旧无法查看。希望有朝一日有那么一个应用,可以直接将那些帮助文档下载下来,并以一定的格式显示。而像groovyhelp的文档、源码互相对应方便查看的功能,更可以做成一个上下两个框架同步显示的形式,让用户在查看帮助的同时通过源码进行进一步了解其操作形式。

       附带说下,虽然应用界面是纯英文的,但是它可是我们国人的杰作哦。

项目地址:http://code.google.com/p/groovyhelp/

, , , ,

网站开发学习两三事

2011年07月31日 分类目录 :个人日记 0

根据软件工程师培训的进程,现在已经进入web开发阶段,更细化的说法是已经开始了javaScript的学习,待结束了对它的学习之后就要转入后端了,之后也就只剩下SSH框架了,时间过的真快。最近在练习前段开发时,着实让我头大了一回。

根据安排,我们需要独立完成一个公司网站的项目,由于刚开始web开发,所以现阶段只需要按照提供的样式做出静态网页。不过就算这样也把我折腾得半死。至今已推倒重做5、6次,每次搭出来的框架都不大好,总算在昨晚把一个像样的框架搭好了。又由于IE和Firefox、chrome等浏览器对CSS的支持不同、解析不同,使得同一效果在不同浏览器中有不同的效果,以至于我又不得不安装了5大主流浏览器(IE9、FireFox5、Chrome12、Opera11.50、Safari5)。虽说这只是一个作业,不过以我要做就认认真真做,要做就考虑足所有可能的情况的性格,我宁愿速度慢一点,一点一点来做,争取做的完善。为什么各浏览器对CSS的支持不能统一呢(当然主要问题出在财大气粗的IE身上)?

虽说我比较偏爱于在Linux系统里做这些开发相关的作业,不过……由于众所周知的原因,像这种网站开发还是在windows下做来的实际点,不然怎么能够充分考虑到ie和safari这两个在linux中没有的浏览器呢?

对于艺术细胞极度匮乏的我来说,设计制作网页前段可算是个折磨,做出来的界面永远都是丑陋不堪的,这让我情何以堪,以后还如何制作自己的WordPress主题呢?如何去做我感兴趣的网站(早已有了初步设想,只待技术成熟后将其实现)?

,

从Linux桌面客户端发出的日志

2011年07月06日 分类目录 :个人日记 5

最近,为了能够更好的学习软件开发工艺,再一次在电脑上分出了一块空间来装Linux系统,起先安装的时Ubuntu11.04,不过对它的界面实在不感冒(除了那个全局菜单是我的菜),于是就考虑换个发行版了,刚好前两天看到deepin Linux11.06发布了,就安装了体验下。

对deepin linux的整体风格还算满意,尤其是它也支持全局菜单(虽然并非所有软件都能应用)。但是,不知道是深度团队的开发人员能力有限还是其他因素造成的,这个版本中还存在很多问题。不过,不管怎么说,还是需要支持一下国内团队的作品的,毕竟现在国内做Linux的就这么几家了,据说以前小有名气的新氧、开拓者都夭折了?

先来说说这个deepin linux让我满意的地方:

  • 强劲的输入法。很早就听说过有个小小输入法(yong)很强大,之前也曾在ubuntu环境中尝试使用过,不过总存在些问题,比如悬浮框不显示或只显示外框,里面的内容不显示等,现在,这些问题全部不存在了,在deepin linux中预置的是特别定制版,经过过专门的优化。
  • 好用的CHM阅读器,由于这个linux环境我主要是用来进行java开发的,所以难免需要查看一些帮助文档,而当前帮助文档比较流行的格式便是chm,虽然我们可以自己通过源、软件中心安装各种chm阅读器,但是在我测试了几个比较流行的之后发现,它们基本对中文的支持都很差。偶尔间了解到一个国人制作的、专门针对中文进行过优化的chmsee阅读器,于是就在ubuntu中体验了,不过很可惜,尝试了多次都安装失败,最后不得不放弃,而现在deepin linux预置了这款对中文效果很好的chm阅读器,挺省心的。
  • 使用的是自己的源。使用ubuntu的时候经常被那慢如龟速的升级速度折腾,而现在,软件的更新等基本都通过deepin linux自己的源来进行,基本克服了某些因素所导致的更新缓慢问题(是否所有软件均通过它们的源更新暂时未确认)
  • 安装完成后我需要进行的调整较少。以前安装完ubuntu总要更新好几百兆的文件、语言包,而现在这些都剩下了;以前安装完之后总要删除一堆预置软件,然后再装一堆符合我使用习惯的软件,而现在,虽然这个步骤还需要进行,但是量少了很多。
  • 令人输入的主题风格,尤其是那个开机音,让我非常的舒服。

接下来是几个不满意的地方:

  • 安装过程中仍有大量英文,虽然官方在介绍这个版本时声称已经把安装过程中的英文部分汉化好了,但事实上在正式版中仍有这个问题。
  • Bug较多,从deepin软件中心安装软件时经常出现“安装失败,请确认没有其他apt程序正在运行”之类的提示,但实际上我并没有运行其他apt程序,且事实上它已经完成软件安装进程,新安装的软件也已经可以使用了
  • 软件中心中不少软件安装后无法使用。deepin linux最被人称道的地方就是他们和永中合作引入了永中集成office(EIO),但是, 无数人发现安装后无法使用;此外还有些软件安装后无法直接从菜单启动,而需要从终端用管理员身份启动(sudo ***),比如我现在写这篇日志的软件。
  • 更多问题虽然我还没发现,但是已经有不少用户发现了
  • 这点是个题外话,这两天发现用户在官方论坛提出的问题基本都无法得到官方答复,这样挺伤用户心的,毕竟现在国内的linux用户中有很多都是小白级别的,早已习惯了windows的傻瓜式操作。

安装完系统,又安装java环境,下eclipse以及一些必备插件(这个蛮让我抓狂的)。先后下过最新的eclipse3.7 for java、eclipse3.7 for javaEE、软件中心里的eclipse3.5.2,都出现了些让我抓狂的事,多个要用的插件无法成功安装,最后决定还是选eclipse.36,这次终于能够成功安装这几个插件了。

为了能够在Linux中也能偶尔更新下我的网憩阁,又查看了番离线客户端。其实在去年使用ubuntu的那段日子几乎尝试过所有相关软件(5、6款吧),当时没找到任何一款能够合我心的,这次其实也没抱多大的希望。没想到,这次在deepin软件中心里,还真找到了一款最接近我的需求的客户端——blogilo,虽然它没有我在windows中使用的菊子曰那么强大(仅考虑发布到wordpress),它不支持从服务器上选择日志要使用的标签(仅支持获取分类),它不支持新建分类到服务器,它也不支持对上传到服务器的图片进行随机重命名;但是和其他功能更为简陋的客户端相比,它是最接近我的需求的。这篇日志就是用它来撰写并发布的。

当我辛辛苦苦安装之后,竟然无法从菜单中启动它,抓狂!!尝试性的从终端启动,没想到这下就成了。虽然影响不大,不过毕竟还是有点不方便,也许是权限的问题,稍候去看看如何解决。

好了,唠叨了那么多,我的linux环境基本算是完成了,接下来就差几个需要用到的编程环境(如LAMP)了。哦,对了!还有最让人头大的oracle,根据网上的消息,oracle并不支持ubuntu等桌面发行版,要想安装上得废点工夫的。

还有,不知有没有人能够搞定tor+vidalia的,我这边参考网上的设置了仍然没法使用来着,太伤人心了。

最后希望那些对linux有兴趣的可以在折腾linux过程中找到自己的乐趣,当然也希望deepinlinux能尽快成熟起来。

, , , , ,

一个优秀的电子书分享网站

2011年06月05日 分类目录 :资源分享 2

        一次偶然的机会发现了这个网站,完全出于尝鲜的心理去尝试性地注册了它,最后被上面众多专业的书籍所叹服,这个网站就是——皮皮书屋

       皮皮书屋上分享的都是技术类书籍,且有很多是英文原版的PDF书,对于喜爱技术、搞技术的人来说皮皮书屋就是个藏宝箱,只要你打开它,你就能获得无尽的知识,技术,提升你的能力。皮皮书屋没有华丽的界面,或者说是非常简陋,但是它的价值在于它分享的那些专业的、高价值的电子书。

       当然,要想获得这些高质量的电子书也是需要付出些许代价,为了阻止一些纯粹来下载电子书的人,皮皮书屋使用了严格的注册验证码制度,其验证码不像一般网站那样是在图片中识别字母、数字,也不是做一些低级的问答题(如1+1=?),它需要注册者做一题编程题,而且刷出来的题目可能是C语言,可能是JAVA,可能是JS,也可能是其他编程语言。

       无论如何,对于喜爱技术的人来说,这个网站真的不错。

无觅相关文章插件,快速提升流量

,