等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
重新开始Android(安卓)系统的和码软件开发 2012年09月16日
今年年初,我开始做Android上的和码软件,还写了个记录,后来因安卓系统上开发遇到了困难,工作的变故,就停了。http://www.hezi.net/He/HeMa/HTML/HeChinese_Android.htm
这段时间,我工作之余有点空,总该做点什么才行,在网上来来去去,只能除徒增烦恼。昨天我参加了Windows 8和Windows Phone开发的一个技术培训会,意在从微软技术上再开始,但Windows Phone 8的SDK还没有发布,即使Windows Phone 8下月发布了,也可能不允许做系统的输入法。再一Android SDK 4.1发布,又增加了新功能。考虑再三,还是从Android开始。
在昨天开发者会议上,有20多个开发者,当讲师问,在坐各位是否有自己的项目时,只有我一人举手。这就是说,多数人都是来了解学习新技术,但没有具体的项目,没有明确的目的。IT新技术层出不穷,如果没有项目,即使有十八般武艺,也没有表现的机会,光学不练,要不了多久,所学的就忘了。这也是每次IT泡沫,或经济危机来袭后,总有一部分IT人员被淘汰的原因。
在这点上,我是幸运的,我有做不完的IT项目,并且是很有意义的项目,所用的技术都保留在我的软件里,比较容易回忆起来。我做的软件有很多人在用,也常常更新。
所不如意的是,和码汉字字形技术的软件,都没有给我带来收入,两年前我开始做苹果iOS上的和码软件时,信心满满,认为只要做好软件,定能给我带来经济收入,这样我就可以安心继续做软件。但现在AppStore上的4个软件,每天都新增100多个装机数,这已不错了。但用户只用免费部分,只有零星的用户购买。没有经济收入,就没有办法坚持,不得不找工作谋生。没有经济收入,也打击了我继续开发的积极性。因为在AppStore上没有收入,在Androed Market上,也不会有收入。
我还记得前几年做和码软件时,很艰苦,但很充实,我还是想过得充实些,现在虽然做不到那样投入,但我还是应该把零碎的时间用起来,慢慢推进和码的开发。这就是我现在想的,又重新开始吧。Edited by user 2012年9月23日 21:00:55(UTC)
| Reason: Not specified
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
上个星期从安装Android4.1开始,重新熟悉安卓系统的开发环境,学习基本内容,做了一些基本练习。感到从Android4.0与4.1版,有很多的改进。
1. 根据developer.android.com上提供的安装步骤,安装容易多了。
2. 安卓软件开发的网上培训课程非常好,概念详解得很细致,容易理解。这是新增的内容。以前网上也有资料,但没有这次的系统与详细。http://developer.android.com/training/index.html
这些内容可以做为我学习开发的依靠,很好。
感觉event oriented programming,安卓系统采用Activity + Intent的方法,很新颖,简单容易理解。
首先做HeCharacter(汉字字根知识与技术)软件。只要坚持,就能成事。Edited by user 2012年9月23日 21:32:56(UTC)
| Reason: Not specified
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
星期五晚上,朋友大力推荐我看《中国好声音》的节目,一看就是一个晚上,听到很多没有听过的歌曲,感到中国音乐也人才济济,这是个好的培养提升人才的平台。周杰伦的歌我听不懂,但周杰伦的歌却风靡中国,我曾几次问周围的人,周杰伦的歌有什么好听,他们也说不出来,现在看来是中国声乐人才短缺,优秀的音乐人没有宣传出来形成的,以后周杰伦现象就不会再出现了。但这个节目我不能再看了,这毕竟是与和码技术完全无关的领域,浪费我的时间。
星期六下午,本来编程上了路,但遇到一个很怪的错误,程序怎么都编译不过去。报出了很多的错误,为此我更新了Eclipse,从3.7.1到4.2版。重新做了HeCharacter Project,再一点点的加人内容。发现原因是有段程序中有个不显示的字符,我按组合键时,曾调出过法语键盘,又不知道怎么换回来,只有关掉Eclipse,这过程输入了个不显示的字符到程序中。这折腾去了我好几个小时。
星期天是中秋节,我中午去同学家吃饭,同学在一起又聊了很长的时间。
好在安卓上的第一个和码软件HeCharacter project,已做了两个界面,一个是首页,二是汉字25个字根的形成过程,功能还没有做全,但感到上路了。边学边做,慢慢增加内容。
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
2012年10月13日
又是两个星期过去了,和码一直是我空余时间的主要事情,但进展不快,有几个原因:
1、安卓开发平台的有些缺点,如运行软件用的软件模拟器很慢,程序运行有些怪现象,如昨天可以运行的Project,今天就运行不了,网上找到各种解释,试了很多的建议,问题克服了,但心里没底。
我在MacBook上安装运行安卓开发平台(现在依照安装步骤是很简单),运行速度也是慢。我还是用Windows PC上做安卓软件。两台电脑都是笔记本电脑,Windows PC屏幕大些。两台电脑都有点噪音,Windows PC噪音大些,但习惯了,也都感觉不到。
就象早前考虑先做微软手机,还是安卓手机,其实那个做出来都好,关键是立马去做。
2、我并不是快速的软件开发者,我有些成果,也是因为长时间专注于这个项目。我也在想为什么我做不快?
但又一想,编程就是一个技术活,现在的编程就是个抄来抄去的过程。虽然软件功能是我的,但实现的方法是别人的。如在苹果系统上编程,你就要用苹果编程语言,苹果界面设计元素,与实现方法,如果在安卓上做软件,你就要用不同的另一套方法。他们都提供了这些功能实现的函数与例子程序。
编程就是要学习别人的东西,有些是大段地抄,有些是小段地抄,然后拼到自己的程序中,做些修改,把自己的软件做出来,拿到别人的平台下去运行。
所以创造性的工作,都是语言的设计者,苹果与安卓系统的设计者做的。软件工程师都是跟在后面抄。
既然是技术活,就是熟练程度的问题,多用多练就会快起来吧(还好,我也有点创新性的,那就是“和码汉字字形技术”)。
10月11日,中国作家莫言荣获诺贝尔文学奖,他在农村从小在农村长大,很了不起,以后回国,定买几本他的书读。优秀的文学作品的艺术性与创造性应是不会被超越的。
第一个星期,花了时间考虑界面设计,基本是参照苹果系统上的“和码字根知识与技术”软件界面,主要是查找这些界面在安卓系统上的实现方法。了解并应用了Action Bar到程序中,安卓的Action Bar有苹果系统里没有的功能,感觉是后来者居上,技高一筹。
了解了Fragement,但还没有认识到其在这个软件中的用途。
上个周末是加拿大的长周末(星期一10月8日是感恩节),我还请了一天假(10月5日星期五),去渥太华看望我的小孩,星期天(10月07日)回到滑铁卢。
Edited by user 2012年10月13日 10:52:25(UTC)
| Reason: Not specified
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
2012年10月31日
今天是Halloween节,万圣节,鬼节。小孩们地带着吓人的面具,晚上到挨家挨户去讨糖果,每到一家都对主人说:trick or treat(要么招待,要么遭殃),主人家一般都早早准备了很多的小食品包。小孩子特别喜欢这个节目。年未到了,这也是为圣诞节到来造气氛了。
这款软件要用到以下几个技术: 1、是图片显示,与图片的更换; 2、字根读音; 3、手写字根练习; 4、图片动画; 5、HTML文章的显示; 6、键盘功能(在本软件中的输入); 7、Web Service功能; 8、软件内购买功能。等等
这些天又加入了一些功能,如: 1、加入了数字小键盘,实现大小键盘的相互切换。
2、加入了第二,第三组字根的图片与语音文件。
图片显示功能有了,字根读音功能有了,手写功能已部分做到,图片动画功能是接下来的内容。
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
2012年11月4日
11月2日星期五,我请了一天假,年未了,我还有几天的年假没有用完,又不能转到下一年去。也好,可以用来做这个软件。
星期五,把书写练习的部分做好了,这项功能前后用了一个星期的时间。
中间汉字图片WriteView 是放在Library中的View, 背景是个可以一步步显示字根笔画顺序的动漫,上面可以用手练习书写,双击图片,就去掉笔迹,并再次显示笔画顺序的动漫。书写时,第一笔是红色,第二笔的绿色,第三笔是蓝色。可以与图片中正确的书写顺序对比。
这个WriteView功能独立,可以用于以后的HeBook1, HeBook2软件中的书写练习。
学习资料: 1、Android ApiDemos中的FingerPaint 的例子; 2、学习了Creating Custom Views的内容:http://developer.android.com/training/custom-views/index.html 3、学习了http://stackoverflow.com/上很多关于Android编程的帖子。Edited by user 2012年11月4日 21:02:55(UTC)
| Reason: Not specified
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
2012年11月06日,和码在iOS上《和码中文》教程第一册软件,售出了共25课,这是单天最高销售量,是新加坡的一位用户购买的。
2012年11月08日,今天做到了Image animation的功能,这是和码字根练习的内容。
|
|
|
|
等级: Administration
组: Administrators
注册时间: 2012/2/4(UTC) 帖子数量: 233
|
2012年11月11日
进一步将HCKeyboardView的功能独立出来,使其包含:
Quote: 1、OnKeyboardActionListener功能; private OnKeyboardActionListener hcOnKeyboardActionListener = new OnKeyboardActionListener() { public void onPress(int primaryCode) { if(primaryCode>=0 && primaryCode<=5) { typingState.typeShuMa4NumPad((byte)primaryCode); if(typingState.m1<10) { passMassage2Activity(typingState.m1); } else { int ind = CharSet_Model.shuMaToIndex(typingState.m1); charSetModel.playSound(ind, 1.0f); passMassage2Activity(typingState.m1); typingState.clearTypingState(); } } else { typingState.typeShuMa4NumPad((byte)primaryCode); int index = CharSet_Model.shuMaToIndex(typingState.m1); if(index>=0 && index<25) { charSetModel.playSound(index, 1.0f); passMassage2Activity(typingState.m1); typingState.clearTypingState(); } } return; } public void onRelease(int primaryCode) { if(primaryCode == 123) //Switch keyboard { isNumPad = !isNumPad; setupKeyboard(isNumPad); if(isNumPad) passMassage2Activity((byte)122); //numpad else passMassage2Activity((byte)123); //big keyboard return; } else if(primaryCode == -1) //go to previous activity { //super.onBackPressed(); passMassage2Activity((byte)-1); return; } else if(primaryCode == 88) //Get help { } return; } ….. }
2、数字键盘与大键盘转换,键盘上字根显示,字根发音,三个字根组的软件等功能; 3、实现Keyboard的TypedMa信息到Activity的传递,参看了以下这个帖子: http://www.helloandroid....om-view-horizontalslider 以及Android的资料: http://developer.android...topics/ui/ui-events.html
Quote: private OnMaTypeListener myTypelistener; public interface OnMaTypeListener { void onMaTyped(View v, byte shuMa); } public void setOnMaTypeListener(OnMaTypeListener listener) { myTypelistener = listener; }
4、将HCKeyboardView移到HeLibrary中。 HCKeyboardView, (HeChinese)与以后和码输入法软件中的HeKeyboardView会有些区别。
今天买了Google Nexus 7是Android 4.1的Tablet,269.70+税=304.76加元。现在可以在设备上试和码软件了。Edited by user 2012年11月12日 8:33:53(UTC)
| Reason: Not specified
|
|
|
|
等级: Guest
组: Guests
注册时间: 2012/2/4(UTC) 帖子数量: 23
|
请点击查看下续帖子。Edited by user 2013年5月25日 13:36:44(UTC)
| Reason: Not specified
|
|
|
|
论坛跳转
您 不可以 发表新话题.
您 不可以 回复话题.
您 不可以 删除自己的发言.
您 不可以 编辑自己的发言.
您 可以 发表投票.
您 不可以 投票.