??xml version="1.0" encoding="utf-8" standalone="yes"?>精品熟女少妇AV免费久久,久久久久亚洲av无码专区导航,久久精品免费大片国产大片http://www.shnenglu.com/codejie/category/20633.htmlUsing C++zh-cnSat, 26 Apr 2014 17:50:29 GMTSat, 26 Apr 2014 17:50:29 GMT60EL : Free package of Februaryhttp://www.shnenglu.com/codejie/archive/2014/02/22/205907.htmlcodejiecodejieSat, 22 Feb 2014 13:12:00 GMThttp://www.shnenglu.com/codejie/archive/2014/02/22/205907.htmlhttp://www.shnenglu.com/codejie/comments/205907.htmlhttp://www.shnenglu.com/codejie/archive/2014/02/22/205907.html#Feedback3http://www.shnenglu.com/codejie/comments/commentRss/205907.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/205907.html
    昨天意外收到LingosHook的插件捐? 开心的?..但仔l一? 怎么又是haolly? 一问才? 原来是ؓ(f)了EL的内容包...于是开始恐慌v?..因ؓ(f)EL没有"市场"的缘? 已经不更C... 而haolly?拒绝"退? q?.q收了银? 不干事L不好? ? 好吧, 我更, 反正又么说更几个, 嘿嘿...

    于是昨晚加上今早, 折腾了很? l于打包好了ESL?31?35评内容. ? 自己都忘记EL下蝲?奥妙"之处?-- EL内容包更新服务器在www.shnenglu.com, 而实际内容包是放在skydrive.live.com或其它服务器上的, 中间又有很大的圈子要l的, q一切都是靠那个Request Code来引导的...很是J琐, ? ? 谁叫咱没银子够租个服务器?..   

    今天试发现EL在下载内容包时还是有个Bug, 很是"固", 本想随手升? 却发现googleode.comg不支持上传下载文件了, q? q是要断了我"发布"的渠道啊...好吧, 既然没法更新应用, ׃天就借着haollyl的Z(x), "透露"下EL内容包直接更新秘?-- 下载的内容包直接放到EL所在SDCard上目录的cache目录?sdcard/jie/cache), 重启EL卛_.  当然单的Ҏ(gu)q是直接输入内容包的Request Code.

    不废话了, ?a href="http://www.shnenglu.com/codejie/archive/2013/08/27/202547.html">q里查看EL的ESL 131-135内容? 再次感谢haolly的大力支?



codejie 2014-02-22 21:12 发表评论
]]>
EL : Free package of Decemberhttp://www.shnenglu.com/codejie/archive/2013/12/14/204795.htmlcodejiecodejieSat, 14 Dec 2013 03:19:00 GMThttp://www.shnenglu.com/codejie/archive/2013/12/14/204795.htmlhttp://www.shnenglu.com/codejie/comments/204795.htmlhttp://www.shnenglu.com/codejie/archive/2013/12/14/204795.html#Feedback1http://www.shnenglu.com/codejie/comments/commentRss/204795.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/204795.html快捷方式

 

    一下子十二月都q了一半了..q个月的免费包上周就传上来了, 只是试中一直发C问题, 也就没发帖说?-- 如果EL不开着, 下蝲的内容包没法自动加载进? 没认真调? 不知道是不是跟升U到4.4.2有关...

    为啥没认真呢? 因ؓ(f)? 因ؓ(f)发现EL没人用?发胦梦破灭了?...q个月放上去的是手里的最后一个包 -- EL评126?30? 后面没啥'意外'׃更新? 有空再说?..

imageimage

 

    发胦的梦q要做下? 所以这快一个月的时间也没闲着, 游戏(I;P)一直在? 没个工q真是辛苦啊, 一个开始画面就要全部用代码来实? q是要疯?..

    不多说了, l箋敲去? 希望q个游戏可以博得大家的喜?..

 

    ? 真有喜欢EL? 误帖吧, 回头找个旉写个"如何制作EL的课E包"的课E来...



codejie 2013-12-14 11:19 发表评论
]]>
EL : Release 1.6.1 and Free package of Novemberhttp://www.shnenglu.com/codejie/archive/2013/11/10/204190.htmlcodejiecodejieSun, 10 Nov 2013 09:28:00 GMThttp://www.shnenglu.com/codejie/archive/2013/11/10/204190.htmlhttp://www.shnenglu.com/codejie/comments/204190.htmlhttp://www.shnenglu.com/codejie/archive/2013/11/10/204190.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/204190.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/204190.html快捷方式

 

    ELq个版本主要增加?中文'支持和修攚w分bugs.

el_57

    本来q几天忙于敲一个新的应?I;P), 但某个夜? H发奇想地想试试google play是个? 于是用我唯一的信用卡试注册了play, 本来想着国内注册个play账号应该跟网上流传的一?-- 十有八九(ji)??? 所以没怎么当回? l果W二天一? Y? 好吧, Google, 那U$25归你?..

    既然钱都被收? 那不试试有点冤大头?..所以赶紧做了这个EL Release1.6.1传了上去. 本来想着按照|上传的一? 应该审查好多天吧, l果, Y? 没到两小? 竟然直接在play中能查到?..好吧, Google, 败给你了...说好的审查原来就不存在啊, 怪不得每ơ在Play上查看最新app? L见到各种各样??cd? Google, |上传的关于你?Do't Be Evil'信条N也只是传?

   App上传需要一?12x512的应用图? 我这h有美? 自己又不?x)PS? EL只好如下模样dGoogle Play?..

el_play_icon

http://play.google.com/store/apps/details?id=jie.android.el

 

    Z庆祝EL传到Play, 也是C11月了不是, 所以啊, 请下?a href="http://www.shnenglu.com/codejie/archive/2013/08/27/202547.html">本月EL免费内容?- 121-125?/a>! (q个上个月就做好? taobao上看, gEL不是大家需要的, 所以一直懒的做新的?..)



codejie 2013-11-10 17:28 发表评论
]]>
EL : 1.6.0 Releasehttp://www.shnenglu.com/codejie/archive/2013/10/21/203861.htmlcodejiecodejieMon, 21 Oct 2013 15:48:00 GMThttp://www.shnenglu.com/codejie/archive/2013/10/21/203861.htmlhttp://www.shnenglu.com/codejie/comments/203861.htmlhttp://www.shnenglu.com/codejie/archive/2013/10/21/203861.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/203861.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/203861.html 

快捷方式

 

    ELq次被我重写了一半的代码 -- 大量的aidl接口被broadcast方式替换掉了, q大大减了UI和Service, 以及(qing)个模块间的耦合. 而引赯样做的原因仅仅是ZlEL增加个Widget. 在开始敲EL? 我已l尽力地分割开各个模块的功? q用Intent, aidl什么的减少怺间的q接, 但当开始添加Widget? 才感觉做的还不够'l?? 比如, 当开始播放时, 评昄UI, 通知栏以?qing)widget都需要知? 而如果用intent或aidl, 那就很麻烦了, 需要一个一个通知? 此时broadcast是一个不二的选择? Z表现自己?军_', EL几乎是重写了所有和播放有关的操? 曄的aidl, callback全都换成了broadcast...

 

    对于一个app来说, '技术细?不是主角, 像我不?x)告诉你整个ELq了一个Activity一? 功能才是主题不是?

    EL 1.6.0更新如下:

    1. 新增EL的Widget;

    2. 修正包下载bugs;

    3. 重新设计播放接口;

    4. 重写UI切换代码;

 

    1. EL的Widget

el_54el_55el_56

 

    上图所C? EL新增的Widget跟其播放界面中的操作栏完全一? 功能也一? 包括播放的快速定位选择. (q个酷不? 我还没见q哪个app像ELq样无聊到在Widget上添加个'菜单', 嘿嘿~) 点击Widget中的EL图标, 可以快速打开EL应用.

 

    EL 1.6.0其它更新都是'看不?, ׃敲了, EL的用说明请参见q里.



codejie 2013-10-21 23:48 发表评论
]]>
EL : 1.5.0 Releasehttp://www.shnenglu.com/codejie/archive/2013/10/09/203623.htmlcodejiecodejieWed, 09 Oct 2013 14:34:00 GMThttp://www.shnenglu.com/codejie/archive/2013/10/09/203623.htmlhttp://www.shnenglu.com/codejie/comments/203623.htmlhttp://www.shnenglu.com/codejie/archive/2013/10/09/203623.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/203623.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/203623.html快捷方式


    没h报Bugs, 假期ql敲新版本了, 所? EL Release 1.5.0来的比较早哦..
  
    EL 1.5.0主要新增了如下两个功?
    1. 自动下蝲/安装新版?
    2. 通知栏中控制播放;

    1. 自动下蝲/安装新版?br />     q个功能应该在ELW一版的时候就该支? EL没有攑ֈM?应用商店'? q意味着不会(x)自动通知和下? 每次更新都要用户下蝲apk? 然后再安? q真是罪q啊...对不起啊, 我也是才惌v? 所以赶紧就加上?
    如下图所C? 当点?Check for new packages' 按钮? 如果EL发现有新版本? ׃(x)自动提示是否下蝲安装. 在确认下载安装后, EL?x)开始下载新版本, q在下蝲完成时自动安?


    下蝲提示只会(x)每次(g)查新包时?x)提CZ? 但在About界面中M(x)昄最新版本的(Latest Version is xxx). 另外, EL的数据是攄在sdcard上的, 只要不删除数据文? 更新ELq不?x)丢失原来的数?

    q里需要说明下, Ҏ(gu)Android的安全机? q不能保证下载后的EL安装包能够安装成? 可能׃权限, 或者签名等{问题导致无法安装或者安装失? 当失败时, 因ؓ(f)EL安装包已l下载好? 只需要打开sdcard下的/jie/el/cache/el.apk文g手工安装下皆? 不需要再下蝲和拷贝安装EL安装包了. (x像我q样直接全手工制作和安装Android ROM的应该不多吧? q样做的好处是 -- 惛_嘛就q嘛...)

    2. 通知栏中控制播放
    当EL播放时候被切换到后台时?x)有通知昄在通知栏中, 如下图所C? 现在可以直接通过q个通知来控制后台的播放, 而不再需要打开EL? 方便? 


    点击通知中的图标,可以q行相应的操?-- 前一? 播放/暂停, 下一个和关闭. 
    ׃Android 2.3.x不支持这个功? 所?.3.x版本上的EL的播N知q是原来的样? 只能直接点击切换到EL, 而不能像现在q样直接控制播放. 

    另外, 现在只有EL在播放时被切换到后台, 才在通知栏中昄通知. 不再像前面的版本每次播放都现在通知? (省的每次切换是都昄下通知, 好闪?..)

    3. 透明播放控制?br />     如下? 现在播放控制Ҏ(gu)透明的了, 加上点击隐藏'内容标题?功能, 现在昄区域感觉更大了不?



<---- 赶紧收工的分割线 ---->
    那个用来控制播放的通知原本可以做的再cool? 后来x, 了 -- 知道咋做好? 所以其它通知的样子也没有再改一个了...? 发现自己来把EL当成l手的应用了, 很多代码都是Ҏ(gu)改去, L惛_点好玩的代码在里? 而不是想着什么功能了, 什么稳定了...是不是赶紧敲完后面两个功? 然后停手?x)对EL更好点呢?

codejie 2013-10-09 22:34 发表评论
]]>
EL : Free Package of Octoberhttp://www.shnenglu.com/codejie/archive/2013/10/01/203517.htmlcodejiecodejieTue, 01 Oct 2013 13:45:00 GMThttp://www.shnenglu.com/codejie/archive/2013/10/01/203517.htmlhttp://www.shnenglu.com/codejie/comments/203517.htmlhttp://www.shnenglu.com/codejie/archive/2013/10/01/203517.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/203517.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/203517.html    十月q是来了, 比我预期的来的早...因ؓ(f)来的? 加上q几天又有树(wi)莓派来捣? 所以啊, 十月EL的Free Package没?..
    ? q是不对? 晚上l于d来了EL早期的测试内容包--ESL?6?0! Ҏ(gu)朋友的徏?-- '你Y一个包那么? 我下载都要个五分? 能弄个小的不?'...(好吧, 败了, 以我的网? 试下蝲一个包?0+分钟好不, Y?..) 所以这ơ跟ESL 15课一? 做了个单独课E的内容? h看这?/a>. (嘿嘿, 一ơ一个包, 够再四个月用的?..)

    另外有h?-- '怎么查询一个没有高亮的单词?', ? q问题太'高端'?-- 因ؓ(f)q是我一直想搞定但还没有扑ֈ好办法搞定的问题. 除了2.3.x的兼? 我还搞不定ActionMode. ? 所以啊, 目前的法子就是先'选中', 然后在ActionBar上选中'拯', ?_脓(chung)'到查询框? 如下面所C?


    先这L(fng)着, 待我哪天H然'醍醐灌顶'了再补上?..

    q两天夜里ELq是有近战的, Release1.5.0可能?x)来的早? 呵呵...看下? 能看出啥'剧??

    

codejie 2013-10-01 21:45 发表评论
]]>
EL : 1.4.0 Releasehttp://www.shnenglu.com/codejie/archive/2013/09/28/203461.htmlcodejiecodejieSat, 28 Sep 2013 06:49:00 GMThttp://www.shnenglu.com/codejie/archive/2013/09/28/203461.htmlhttp://www.shnenglu.com/codejie/comments/203461.htmlhttp://www.shnenglu.com/codejie/archive/2013/09/28/203461.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/203461.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/203461.html快捷方式

    EL 1.4.0是敲好? 以咱的敲字速度理应在上周放假期间就可以Release? 只是q期间的敲字节奏被另外一件事情打׃, 它就?-- ?wi)莓z?RaspberryPi)!
    
    一天晚上十点多? 朋友拿来个小盒子, 跟我?-- "来看?..".  ? 一块开发板, 很是惊喜, 上次?是一?q东东还是搞WinCE的时候呢, q都已经好多好多q过M...
    "q块是树(wi)莓派, q有q个传感? 你把数据取出来给我传上来..."
    "? {等, {等. 你知道我完全不会(x)搞这个好?"
    "是吗?! 没啥, 我相信你..."
    "q?..好吧. 那给我讲下该咋弄?"
    "q个是电(sh)? q个是板? q还有个USB无线模块. ? q个是个温度传感? 应该是用q些排线q上? 省点? l我留几根啊..."
    "? 啥叫'应该'?"
    "...意思就? 我也不知道咋? 你自q着? pȝ在这张SD卡上? 刚拷贝来?.."
    "... ..."

    于是随后几个的深夜里, 都是?wi)莓z上闪闪的LED陪着我了...

    扯远?.p是l说EL, ?wi)莓z关的, 回头IZ再来?..

    EL 1.4.0主要修改如下:
    1. 重新装popWindow, popMenu;
    2. 新增背诵(Reciting)功能;
    3. 新增生词?Vocab)功能;
    4. 其它微小改动Q?br />
    记忆和生词本是LingosHook?a href="http://www.shnenglu.com/codejie/archive/2010/04/01/111306.html">主要功能, 作ؓ(f)其衍生应? q部分是不能的...

    在此版本? 可以在EL的课E显C和词典界面? 选中的单词添加到EL的生词本(Vocab)? 

    如上图所C? 当在ESL评昄和词典界面中, 单词被查询时, 在应用弹出其解释H口中可?strong>通过长时间点?Long Click)单词的方式将单词d到生词本? 此时应用?x)显C图中的提示信息, 表示已完成添加操?

1. 背诵(Reciting)功能
    点击菜单中的'My Vocab'选项, 应用切换到Recting界面. cMLingosHook?a href="http://www.shnenglu.com/codejie/archive/2012/08/30/164888.html">LAC的记忆功? 通过对单词的'熟?zhn)?打分来判断对单词的记忆程?


    a. Ҏ(gu)自己的单词的熟?zhn)E度选择相应的选项, 亦称打分. 从熟(zhn)到陌生, 一共四个?
    b. 选择相应?熟?zhn)?? 在下方昄单词的解? 此功能可以在讄中关闭或者开?
    c. 此时可以通过'正确'?错误'来判断自q打分是否正确, 通过此判定及(qing)其打分的情况, 应用军_当前单词?分数', 以决定此单词下次出现的时?

    单词被加?或者点d词时, 应用?x)调用TTS播放单词发音?br />
2. 生词?Vocab)功能
    在背늕面中可以看到, 动作栏上的图标由'Search'变ؓ(f)'Vocab'? 此时点击图标, 进入到如下单词?Vocab)界面?

    单词本界面中列出了所有的'生词'. 点击菜单, 可以按照单词的字母顺序或者分数进行排序显C? 亦可安装ESL评/单词分数/d旉q行分组昄.(分组q没完成, 先写着, 下次可以懒?)

    单击菜单中的'Edit', 可以删除生词本中的单?

    在生词本界面中可以看? 动作栏中的快捷图标已l变?Reciting', 此时点击图标, 可以快速返回到背诵界面. ׃生词本是通过背诵界面q入? 所以当生词本中含有单词? 点击q回按钮p回到背诵界面.

3. 背诵和生词本的相关配|?br />    如下图所C? EL中新增相应的配置以支持的背诵和生词本功?


    a. 'Automatically Speak Words': 自动播放单词发音. 在背늕面中, 当单词加载到界面中时, 自动播放其发?
    b. 'Random Load Words': 随机加蝲单词. 默认情况? ELҎ(gu)单词?分数'大小军_加蝲的顺?
    c. 'Show Word Explanation': 昄单词解释. 当选择了单词的'熟?zhn)?? EL显C单词的解释; 如果关闭此选项, 在选择? EL判定选择'正确', q直接加载下一个单?
    d. 'Double Check Result': 再次判定选择的结? 在选择单词'熟?zhn)?? 用户可以再次判定选择是否正确, 以此来调整单词的分数; 如果关闭此项, 界面中将只现?正确'选择?
    e. 'Auto-Delete High Score Words': 自动删除高分单词. 随着对单词的'熟?zhn)?, 单词的分数将不断增长, 当增长至指定值时(目前?0), 通过此选项可以自动删除q些高分单词.

<---- Raspberry Pi ---->

    q段日子多数旉都在搞树(wi)莓派Q?基本搞定了, Z又学了遍Python?唉, 真是‘黑瞎子掰苞米’啊, 学一个都一?..前天要在linux写段C++, 竟然定义个简单的class都来了个‘语法错误’Q?q才半年不写? 感觉有些废了。。?br />     晚上很忙, 自然像EL的内容包'优先U?不高的事? 先慢慢排吧, 功能搞定?没h?LP拒绝帮忙? 5555~~)...  q两天尽力补上个“十月免费”? 但我打算做一些只包含一ESL评的包Q?xq样体积, 可以便于下蝲?br />    

codejie 2013-09-28 14:49 发表评论
]]>
EL : Compatible PopupMenu Classhttp://www.shnenglu.com/codejie/archive/2013/09/14/203235.htmlcodejiecodejieSat, 14 Sep 2013 09:20:00 GMThttp://www.shnenglu.com/codejie/archive/2013/09/14/203235.htmlhttp://www.shnenglu.com/codejie/comments/203235.htmlhttp://www.shnenglu.com/codejie/archive/2013/09/14/203235.html#Feedback2http://www.shnenglu.com/codejie/comments/commentRss/203235.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/203235.html    大约两周? 在修复EL?a href="http://www.shnenglu.com/codejie/archive/2013/09/02/202941.html">2.3.x的兼定w?/a>? 有一个是PopupMenu相关? q个cdAPI9才有? 那么?.3.xq_上就没法用了. Z能够兼容, 当时用了PopupWindow.
    q两天考虑到PopupMenu后面q是很需要的, 且以前的装仅仅是ؓ(f)了实现播攑ֿ速蟩转的兼容功能, 没考虑再? 所以昨晚重新封装了? q样更加方便和实用了.

    实现的方式还是在2.3.xq_下用PopupWindow来实现PopupMenu的功? 但这ơ只需要在xml下定义个Menu资源好? 不再需要另行准备个PopupWindow所需的Layout资源? 方便再次使用.
    4.xq_下直接就使用Menu资源初始PopupMenu? 而用PopupWindow? 需要先解析Menu资源文g, 得到所需的Item的ID和Title, 然后使用q些数据初始PopupWindow的View.



    
    装的ELPopupMenu代码如下:
  1 package jie.android.el.view;
  2 
  3 import java.io.IOException;
  4 import java.util.ArrayList;
  5 import org.xmlpull.v1.XmlPullParserException;
  6 
  7 import jie.android.el.R;
  8 import jie.android.el.utils.Utils;
  9 import android.content.Context;
 10 import android.content.res.XmlResourceParser;
 11 import android.graphics.drawable.BitmapDrawable;
 12 import android.util.AttributeSet;
 13 import android.view.Gravity;
 14 import android.view.Menu;
 15 import android.view.MenuItem;
 16 import android.view.View;
 17 import android.view.View.OnClickListener;
 18 import android.view.ViewGroup.LayoutParams;
 19 import android.widget.Button;
 20 import android.widget.LinearLayout;
 21 import android.widget.PopupMenu;
 22 import android.widget.PopupMenu.OnMenuItemClickListener;
 23 import android.widget.PopupWindow;
 24 
 25 public class ELPopupMenu {
 26 
 27     private class MenuData {
 28         public int id;
 29         public String title;
 30         
 31         public MenuData(int id, String title) {
 32             this.id = id;
 33             this.title = title;
 34         }
 35     }
 36     
 37     public interface OnItemClickListener {
 38         public void OnClick(int item);
 39     }
 40     
 41     private Context context;
 42     private int resMenuId;
 43     private View parent;
 44     private Object popup;
 45     private OnItemClickListener listener;
 46     
 47     public ELPopupMenu(Context context, int resMenuId, View parent, OnItemClickListener listener) {
 48         this.context = context;
 49         this.resMenuId = resMenuId;
 50         this.parent = parent;
 51         this.listener = listener;
 52         
 53         make();
 54     }
 55     
 56     private void make() {
 57         if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
 58             popup = makePopupMenu(context, resMenuId, parent);
 59         } else {
 60             popup = makePopupWindow(context, resMenuId, parent);
 61         }
 62     }
 63 
 64     private Object makePopupMenu(Context context, int resId, View parent) {
 65         PopupMenu pm = new PopupMenu(context, parent);
 66         pm.getMenuInflater().inflate(resId, pm.getMenu());
 67         pm.setOnMenuItemClickListener(new OnMenuItemClickListener() {
 68 
 69             @Override
 70             public boolean onMenuItemClick(MenuItem menu) {
 71                 if (listener != null) {
 72                     listener.OnClick(menu.getItemId());
 73                     return true;
 74                 } 
 75                 return false;
 76             }            
 77         });
 78         
 79         return pm;
 80     }
 81 
 82     private int getAttributeIntValue(Context context, String resId) {
 83         return Integer.valueOf(resId.substring(1));
 84     }
 85     private String getAttributeStringValue(Context context, String resId) {
 86         int id = Integer.valueOf(resId.substring(1));
 87         return context.getString(id);
 88     }
 89     
 90     
 91     private ArrayList<MenuData> analyseMenuResource(Context context, int resId) {
 92         
 93         ArrayList<MenuData> menu = new ArrayList<MenuData>();
 94         
 95         XmlResourceParser parser = context.getResources().getXml(resId);
 96         
 97         try {
 98             int event = parser.next();
 99             while (event != XmlResourceParser.END_DOCUMENT) {
100                 if (event == XmlResourceParser.START_TAG) {
101                     if (parser.getName().equals("item")) {
102                         menu.add(new MenuData(getAttributeIntValue(context, parser.getAttributeValue(Utils.NS_ANDROID, "id")),
103                                 getAttributeStringValue(context, parser.getAttributeValue(Utils.NS_ANDROID, "title"))));
104                     }
105                 }
106                 event = parser.next();
107             }
108             
109         } catch (XmlPullParserException e) {
110             // TODO Auto-generated catch block
111             e.printStackTrace();
112         } catch (IOException e) {
113             // TODO Auto-generated catch block
114             e.printStackTrace();
115         }
116         
117         return menu;
118     }
119     
120     private Object makePopupWindow(Context context, int resId, View parent) {
121         
122         ArrayList<MenuData> menu = analyseMenuResource(context, resId);
123         if (menu.size() == 0) {
124             return null;
125         }
126             
127         OnClickListener l = new OnClickListener() {
128             @Override
129             public void onClick(View v) {
130                 if (listener != null) {
131                     listener.OnClick(v.getId());
132                 }
133                 if (popup != null) {
134                     ((PopupWindow)popup).dismiss();
135                 }
136             }            
137         };        
138         
139         AttributeSet attrs = Utils.getAttributeSet(context, R.layout.layout_popmenu_window_template, "LinearLayout", R.id.linearLayout1);
140         LinearLayout ll = new LinearLayout(context, attrs);
141         
142         int pos = 0;
143         for (MenuData data : menu) {
144             if (pos == 0) {
145                 attrs = Utils.getAttributeSet(context, R.layout.layout_popmenu_window_template, "Button", R.id.button1);
146             } else if (pos == menu.size() -1) {
147                 attrs = Utils.getAttributeSet(context, R.layout.layout_popmenu_window_template, "Button", R.id.button3);
148             } else {
149                 attrs = Utils.getAttributeSet(context, R.layout.layout_popmenu_window_template, "Button", R.id.button2);
150             }
151             
152             Button btn = new Button(context, attrs);
153             btn.setId(data.id);
154             btn.setText(data.title);
155             btn.setOnClickListener(l);
156             
157             ll.addView(btn, ll.generateLayoutParams(attrs));
158             
159             ++ pos;
160         }
161         
162         PopupWindow pw = new PopupWindow(ll);
163         //pw.setWidth(250);
164         pw.setWidth(LayoutParams.WRAP_CONTENT);
165         pw.setHeight(LayoutParams.WRAP_CONTENT);
166         pw.setFocusable(true);
167         pw.setOutsideTouchable(true);
168         pw.setBackgroundDrawable(new BitmapDrawable());
169         
170         return pw;        
171     }
172     
173     public void show() {
174         show(Gravity.LEFT | Gravity.BOTTOM, 16, 64);
175     }    
176 
177     public void show(int gravity, int x, int y) {
178         if (popup != null) {
179             if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
180                 ((PopupMenu)popup).show();
181             } else {
182                 ((PopupWindow)popup).showAtLocation(parent, gravity, x, y);
183             }
184         }
185     }    
186     
187     public void setItemEnabled(int item, boolean enabled) {
188         if (popup != null) {
189             if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
190                 Menu menu = ((PopupMenu)popup).getMenu();
191                 MenuItem sub = menu.findItem(item);
192                 if (sub != null) {
193                     sub.setEnabled(enabled);
194                 }
195             } else {
196                 View p = ((PopupWindow)popup).getContentView();
197                 View v = p.findViewById(item);
198                 v.setEnabled(enabled);
199             }
200         }
201     }
202     
203 }
204 


    初始PopupWindow的View的资源模板文件如?
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:id="@+id/linearLayout1"
 4     android:layout_width="match_parent"
 5     android:layout_height="wrap_content"
 6     android:layout_marginLeft="16dp"
 7     android:layout_marginRight="16dp"
 8     android:background="@android:color/darker_gray"
 9     android:orientation="vertical" >
10 
11     <Button
12         android:id="@+id/button1"
13         android:layout_width="match_parent"
14         android:layout_height="wrap_content"
15         android:layout_marginTop="4dp" />
16 
17     <Button
18         android:id="@+id/button2"
19         android:layout_width="match_parent"
20         android:layout_height="wrap_content" />
21 
22     <Button
23         android:id="@+id/button3"
24         android:layout_width="match_parent"
25         android:layout_height="wrap_content"
26         android:layout_marginBottom="0dp" />
27 </LinearLayout>







codejie 2013-09-14 17:20 发表评论
]]>
EL : 1.3.0 Releasehttp://www.shnenglu.com/codejie/archive/2013/09/07/203062.htmlcodejiecodejieSat, 07 Sep 2013 11:56:00 GMThttp://www.shnenglu.com/codejie/archive/2013/09/07/203062.htmlhttp://www.shnenglu.com/codejie/comments/203062.htmlhttp://www.shnenglu.com/codejie/archive/2013/09/07/203062.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/203062.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/203062.html快捷方式

    不清楚有几h下蝲用过EL? 偶尔q是收到了些问题, ? 不稳定时期只能先辛苦大家?..ELq两周我一直在? 其是android 2.3.x兼容问题, q个耗了很多旉...上周修正了两个兼定w? 本周计划l箋d两个新功? 然而在试时却又发CN多问? ? 改吧...因ؓ(f)新增了个功能, 所以这ơrelease版本׃升了...

    EL Release 1.3.0 新增/修改了如下内?
    1. 新增'check for new packages';
    2. 修正切换ESL播放异常;
    3. 修正2.3.x下的下蝲兼容问题;
    4. 更多内容包信?/a>;

    1. 新增'check for new packages'
    点开'About'界面, 如下囄. 新增?Check for new packages'按钮, 点击此按? EL取回EL内容包的更新列表.


    更新列表含有三列内容: 内容包的序号, 更新旉和ESL评.

    2. 修正切换ESL播放异常
    EL播放一直不E_, 其?.3.x? 改了很多? 甚至AsyncTask都改成了Thead/Runnable, 因ؓ(f)想着q个Async只能在UI下? Service下用怕不E_. 但修改后也就2.3.x下好? 4.x却没有变? 一发狠, 重新修改了播放时UI跟Service的间的状态通知. q下可算E_点了...

    4. 修正2.3.x下的下蝲兼容问题
    q周弄个2.3.5的GT-I9100做测? 才发?.3.xq_下根本就不能下蝲内容? 试代码才发现原?.3.x下的DownloadManager?.xq_在处?默认'下蝲上有差异? 现在好了, 2.3.xl于可以正常下蝲?

   ȝ来说, EL Release 1.3.0l于使得在android 2.3.x上可以正常运行EL?

codejie 2013-09-07 19:56 发表评论
]]>
EL : 1.2.2 Releasehttp://www.shnenglu.com/codejie/archive/2013/09/02/202969.htmlcodejiecodejieMon, 02 Sep 2013 14:48:00 GMThttp://www.shnenglu.com/codejie/archive/2013/09/02/202969.htmlhttp://www.shnenglu.com/codejie/comments/202969.htmlhttp://www.shnenglu.com/codejie/archive/2013/09/02/202969.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202969.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202969.html快捷方式

    EL 1.2.2 Release? 主要针对android 2.3.x的兼定w题做了修? 修改文档看这?/a>.

    今天试了下, 2.3.x下基本没问题? 但ESL音频播放q是不稳? 比如快速next, next, 没点几下׃(x)crash. q应该是播放时的状态没有控制好. 目前EL采取的是Service侧负责播? UI侧只是展C播攄态的方式, q样做的好处是当UI被切? 音频播放不会(x)被打? q样的问题是要控制好播放状态和两者的状态交? 比如? 播放? UI从后台切入后, 应能正确昄当前播放状?

    q个问题明天再看? 先把修正2.3.x兼容问题的版本先攑և? q样某h2.3的G8可以试试了...
    各位到啥问题就说啊...有问题赶紧改, 不然后面改v来更?.

codejie 2013-09-02 22:48 发表评论
]]>
EL : be able to support 2.3.x againhttp://www.shnenglu.com/codejie/archive/2013/09/02/202941.htmlcodejiecodejieSun, 01 Sep 2013 16:22:00 GMThttp://www.shnenglu.com/codejie/archive/2013/09/02/202941.htmlhttp://www.shnenglu.com/codejie/comments/202941.htmlhttp://www.shnenglu.com/codejie/archive/2013/09/02/202941.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202941.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202941.html    EL 1.2中新增了词典功能, 急着release, 没有在2.3.x下测?(当然? 我的G7被我h4.2.2之后, 也没?.3.x的环境了..), ~译没有问题, 4.x上都OK, 然后release?.. ? 债L要连本带利地归还? 现实如此, 敲字亦是如此?..因此q个周末, 整个周末都在修改EL无法在android 2.3.x上运行的问题.
    知道Android有版本碎化问? 只是没想到这?l节', 不碰到那真是Ҏ(gu)想不到啊...q是前年做IOS? 没考虑版本问题,当然也可能没到. 不吐槽了, 敲字的h? 抱怨不能解决问题啊, q得靠review/debug...
 
    q次发现了两处不兼容的地? 一个是java语言层面? 另外一个则是android控g相关?

    1. ByteBuffer
    EL在从Lingoes词典文g中提取数据时, 需要用InflaterInputStream对象解压原始数据, 代码如下:

    private static int decompressBlock(ByteBuffer in, int size, byte[] out) {
        final Inflater inflater = new Inflater();
        
        byte[] a = null;
        if (in.hasArray()) {
            a = in.array();
        } else {
            a = new byte[size];
            in.position(0);
            in.get(a, 0, size);
        }
        final InflaterInputStream stream = new InflaterInputStream(new ByteArrayInputStream(a, 0, size), inflater, size);
        
        try {
            while(stream.read(out) > 0);
        } catch (IOException e) {
            return -1;
        }
        inflater.end();
        return 0;
    }

    此对象的一个传入参Cؓ(f)InputStream, q样正好ByteButter对象数组化ؓ(f)byte[]? 构造出一个ByteArrayInputStream实例传入. 那么ByteBuffer常用且推荐的方式是直接调用其array()Ҏ(gu), q样无需在申请和构造个新的byte[]I间?
    问题在q里, 在android 2.3.x? ByteBuffer对象是不支持直接数组化的, 在调用arry()? ?x)抛出NotSupportedException异常? 因此Z保持兼容需要在数组化前使用hasArray()Ҏ(gu)(g)查是否可以数l化, 如果不能, 那就要重新申hl空间了.

    2. PopupMenu
    EL在播放时, 支持快速蟩转到ESL评的指定位|上. 如下图所C?


    指定位置的选择菜单是通过PopupMenu实现? 但这个控件是在API 11才有? 意味着低于HONEYCOMB版本?.3.xq_是没法用的. 实际q个问题可以早点发现? 但我是懒了, 以后relase? q是需要运行下Android Lint?
    上图可以看出在两U^C, q个'PopupMenu'是不一L(fng), 那是因ؓ(f)2.3.xq_? 我是用PopupWindow控g模拟了类似PopupMenu的功? 以后有时间看看能不能搞的UI也一样就好了.
    q种控g上的不兼? 可以使用不同q_下运行不同代码来解决.

    private void showPopupMenu(View v) {

        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
            
            PopupMenu pm = new PopupMenu(getELActivity(), v);
            pm.getMenuInflater().inflate(R.menu.fragment_show_pop, pm.getMenu());
            pm.getMenu().getItem(0).setEnabled(audioSlowDialog != -1);
            pm.getMenu().getItem(1).setEnabled(audioExplanation != -1);
            pm.getMenu().getItem(2).setEnabled(audioFastDialog != -1);
            
            pm.setOnMenuItemClickListener(new OnMenuItemClickListener() {

                @Override
                public boolean onMenuItemClick(MenuItem item) {
                    return onNavigate(item.getItemId());
                }
                
            });
            pm.show();
            
        } else {        
            final ShowPopWindow win = new ShowPopWindow(getELActivity(), v);
            win.setItemEnable(0, (audioSlowDialog != -1));
            win.setItemEnable(1, (audioExplanation != -1));
            win.setItemEnable(2, (audioFastDialog != -1));

            win.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    onNavigate(v.getId());
                    win.dismiss();
                }

            });
            win.show();
        }
    }

    本来想着更新下修改好的EL版本赶紧release? 毕竟2.3.xq占?0%左右的䆾? 是不能放弃的部分. 但还是有些心? 所以啊, 再检查下, 明天再说?.(整个周末都在fix兼容问题, 头昏D? 睡觉M...? 毕竟java没有C++玩的那么? 很多基本的语aU别的问题都不清? q要多敲敲才行啊..)

codejie 2013-09-02 00:22 发表评论
]]>
EL : Content Packageshttp://www.shnenglu.com/codejie/archive/2013/08/27/202547.htmlcodejiecodejieTue, 27 Aug 2013 15:32:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/27/202547.htmlhttp://www.shnenglu.com/codejie/comments/202547.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/27/202547.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202547.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202547.html快捷方式

内容包L

序列?/td> ESL评 更新日期 说明 Request Code/Check Code
 8 Lesson 131 - 135  2014/02/22 二月免费?nbsp; 900001300603/0000
 7 Lesson 16  2013/10/01 十月免费?nbsp; 900001300343/0000
 6 Lesson 126 - 130  2013/12/10 十二月免费包 900001300563/0000
5 Lesson 121 - 125
 2013/09/09 十一月免费包 900001300453/0000
4 Lesson 116 - 120 2013/08/27 ?ji)月免费?/td> 900001300233/0000
3 Lesson 111 - 115 2013/08/24 Release开门红?/td> 900001300123/0000
1 Lesson 15 2013/08/15 EL试?(900001300013/0000) 900001300013/0000
0 Lesson 1 2013/08/15 EL内置



    刚刚做好了EL的ESLW?16译ֈ120评内容? 正在上传, |络L, 正好说说内容包的事情.


    现在一共做好了四个EL的内容包:
    1. ESLW一? 内置在EL里面? 启动p看到;
    2. ESLW十五课, 可以Free下蝲? 是试包了;
    3. ESLW?11译ֈ115? l于在taobao.com上卖?.但实际也是Free? 误里找;
    4. ESLW?16译ֈ120? 哈哈, q个包真的在taobao.com上了...

    目前taobao.com上的一个包是RMB2, 不知好卖?..一?x)要再加?VIP'?-- RMB10包圆全部内容? 哈哈, q个狠吧...q有? Z更多的下? 一个月?x)标记或推出一个Free? 到时?x)在q里贴上request code? 一个月能听懂五ESL评真的了不起了, 臛_每篇我要听十多遍才行..
    整体计划臛_Z十个EL内容? q样一个包内含有五ESL评, q五十乘以五{于...? 也不哦...

    内容包的获取q程如下:
    1. 淘宝中选择购买所需内容?
    2. 购买后留下邮件地址, 随后?x)收C来自el.codejie@gmail.com的邮? 其内附有下蝲/安装内容包所ȝ'Request Code'?Check Code';
    3. 认当前手机能够通过WIFIҎ(gu)q接到Internet?br />     4. 在EL?Download'界面中输入相应的'Request Code'?Check Code'?点击'Submit'按钮;
    5. EL开始下载内容包, q在下蝲成功后自动安?
    6. 安装完成? 可在内容列表中看到所购买的内容包评.

    再闲扯下内容包的制作q程?
    1. 先到ESLPod.com上下载要制作内容的mp3音频文g, 同时查找相应的script文档|页;
    2. 拯内容文档, q按照网中高亮内容dEL所识标识到文档? 再添加自q高亮部分标识到文档中;
    3. 然后准备好的文档和其它数据存放到数据库? {mp3文g下蝲完成, 一起压~打?
    4. 拯的我的G7上验? 再上传到指定服务器中;
    5. 准备下蝲链接, q记录到packages文档?

    目前一个内容压~包中含有五ESL评和对应的mp3文g, M文g寸在三十五到四十五兆间. 一个压~包的制作时间大U在一时C个半时? 因ؓ(f)每一都要从头看到尾...目前?争取一周做三到五个? 毕竟q要留点旉Ҏ(gu)EL的Bugs?..

codejie 2013-08-27 23:32 发表评论
]]>
EL : 1.2.1 hotfixhttp://www.shnenglu.com/codejie/archive/2013/08/26/202782.htmlcodejiecodejieMon, 26 Aug 2013 14:19:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/26/202782.htmlhttp://www.shnenglu.com/codejie/comments/202782.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/26/202782.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202782.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202782.html快捷方式

    EL 1.2.1 hotfix :
    
    1. 修正Bug - 播放中切换应? 状态栏中提CZ正确;

<---- 疲惫的分割线 ---->
    q了个周? 却感觉更加疲? 可能是连l敲字的日子太久? q是真的q轻不再? ? 敲字也是体力zd...

    今天按照计划应该整理出ESL?16?20评内容包的, 但那包弄h比敲字闹心多? 心神不定地恍惚了一? 单的文本都没整理?.? 反正q有?11?15的Free? 先用着? 睡觉...

codejie 2013-08-26 22:19 发表评论
]]>
EL : ESL with LAChttp://www.shnenglu.com/codejie/archive/2013/08/24/202526.htmlcodejiecodejieSat, 24 Aug 2013 14:24:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/24/202526.htmlhttp://www.shnenglu.com/codejie/comments/202526.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/24/202526.html#Feedback10http://www.shnenglu.com/codejie/comments/commentRss/202526.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202526.html快捷方式

说明文档
0. EL是什?
    EL (ESL with LAC) 是一个androidq_上的应用, 其可ESL (www.eslpod.com) 的课E加载到应用? 边看边听; 且内|了Lingoes(www.lingoes.net)的Vicon English-Chinese词典, 能够实时查看某些单词的此? 使用EL可以随时随地地看p, 听英? 对学?fn)英语单词?qing)ȝp的听力很有帮?

1. 下蝲安装
    EL支持从android 2.3 到android 4.3版本.
    目前EL只在q里提供下蝲, 一时应该不?x)放到各个应用中? q里q请各位多多传播扩散呀. 下蝲到本地的文g名应为EL.apk, 安装到android手机卛_.应用安装后的图标如下所C?

2. 启动q程
    点击EL应用图标启动EL? EL?x)启动ƈq接自n的服务进E? 如下图所C? 在第一ơ启动时, ׃服务q程需要初始化本地词典数据? 启动旉?x)比较?大约?~5U间. 再次启动?q度条应该只是一闪而过.
   
    EL启动? 如果发现内容列表为空, 会(x)自动从自带的压羃包中加蝲ESL的第一内?-- 'ESL Introduction'. 此时应用界面如下所C? 当压~包导入到EL中后,在系l状态栏中有相应的提CZ息显C?

3. 使用说明
    在内容列表中,点击需要查?播放的ESL评记录, EL显C指定课E的内容文本, q自动播攄应的mp3音频文g.
   
    ESL评除早期的评只有两部分外, 一般包括三部分; 先是慢速读遍课E内? 然后是对内容的讲解部? 最后是正常语速再读遍评内容. 如上图所CEL?x)显CE内Ҏ(gu)本部? q亮显C在ESL讲解中着重提到的单词和句? EL目前有三U高?-- 一是ESL评原文中高亮的语句中的句子, 颜色如上图中'we try to talk .."部分; 二是原文中高亮语句中的单? 颜色?venue'单词所C?; 三是我自p??的单? ?especially'(如此可以看出我的E文水q不?!). 后两U高亮的单词是可以点?yn)L看解释的,如下图所C?  此时点击所查单? TTS?x)读出此单词发?
   
    W三U高亮方式的来由是因为EL自带的ESLW一译֎文中没有M?着?语句,但我又想让大家知道ELq有查词的功?所以就加上了这U方? 后面?x)考虑通过配置方式不显CU高亮方式的, 也省的制作时需要我一个一个单词去看了...目前,q些高亮部分都需要在内容包制作时完成? q没有找到能自动化完成制作的Ҏ(gu), 所以比h打EL来说, 内容包的制作怕是要消耗更多的夜晚? 以后的EL版本中可能会(x)考虑使用用户自选单词方式高?或者用户选中单词后显C释的方式, ?.q些都是后话?..
   
    在播放时, 点击图中播放q度?可以打开更多的播放操作选项. 如下图所C?
   
    五个按钮分别?快速移臌?(暂未支持), 随机播放, 前一? 暂停/播放和下一? 
    在播攑ּ始时, EL?x)在pȝ状态栏中显C播N知; 播放完毕? 自动删除此通知.

    播放时点d退按钮, EL关闭当前播? q返回到内容列表界面? 如果播放时将EL切换到后?被其他app覆盖, 或锁屏等, 音频播放不会(x)被关? 此时可以通过点击pȝ状态栏中显C的播放通知, 快速切换会(x)EL的播攄? 未来实现在播放通知中直接控制播? 比如暂停, 关闭, 甚至播放下一等.

    2. 词典功能  
    在应用的标题栏上有个新的'攑֤?图标, 在除播放界面外的其它界面中点?yn)L图标, 卛_q入词典界面; 在播攄面中点击图标不会(x)直接q入到词典界? 需要点击输入键盘中?查询'按钮才能q入. Z可能?x)改成直接在播放界面中显C查询结? 
    词典界面如下图所C? 此时输入字母, EL实时显C查询到的单? 默认一ơ显C?0? 如果q有更多单词需要显C? 只需向上拖单词列? EL?x)自动加载剩余符合条件的单? 直至昄全部单词. 说明? 部分讑֤, 其是一些Androidqx, 一ơ肯定不止能昄20?但不用担? 只要拖动一ơ后, EL?x)自动判断出一ơ最多能加蝲多少个单词的.


    点击列表中的单词, 弹出如下解释窗? H口跟内Ҏ(gu)攄面中使用的是相同的窗? 因此点击H口中的单词, 是同样可以用TTS发音? 
    弹出H口的外形做了修? 不在是圆角方? 而是充满屏幕宽度的方形框. q样弹出H口看v来比?q?, q概늎在比?行'不是?

 4. 应用菜单
    点击EL右上角菜单项,或者按下手单按?可见如下EL菜单?

5. 背诵(Reciting)功能
    如上图所C? 当在ESL评昄和词典界面中, 单词被查询时, 在应用弹出其解释H口中可?strong>通过长时间点?Long Click)单词的方式将单词d到生词本? 此时应用?x)显C图中的提示信息, 表示已完成添加操?
    点击菜单中的'My Vocab'选项, 应用切换到Recting界面. cMLingosHook?a href="http://www.shnenglu.com/codejie/archive/2012/08/30/164888.html">LAC的记忆功? 通过对单词的'熟?zhn)?打分来判断对单词的记忆程?


    a. Ҏ(gu)自己的单词的熟?zhn)E度选择相应的选项, 亦称打分. 从熟(zhn)到陌生, 一共四个?
    b. 选择相应?熟?zhn)?? 在下方昄单词的解? 此功能可以在讄中关闭或者开?
    c. 此时可以通过'正确'?错误'来判断自q打分是否正确, 通过此判定及(qing)其打分的情况, 应用军_当前单词?分数', 以决定此单词下次出现的时?

    单词被加?或者点d词时, 应用?x)调用TTS播放单词发音?br />
6. 生词?Vocab)功能
    在背늕面中可以看到, 动作栏上的图标由'Search'变ؓ(f)'Vocab'? 此时点击图标, 进入到如下单词?Vocab)界面?

    单词本界面中列出了所有的'生词'. 点击菜单, 可以按照单词的字母顺序或者分数进行排序显C? 亦可安装ESL评/单词分数/d旉q行分组昄.(分组q没完成, 先写着, 下次可以懒?)

    单击菜单中的'Edit', 可以删除生词本中的单?

    在生词本界面中可以看? 动作栏中的快捷图标已l变?Reciting', 此时点击图标, 可以快速返回到背诵界面. ׃生词本是通过背诵界面q入? 所以当生词本中含有单词? 点击q回按钮p回到背诵界面.

7. 配置选项
    选择菜单中?Setting'菜单, 在打开的配|界面中, 目前有如下配|项:

    'Stop After Current' : 当前内容播放完毕?停止播放; 此项不选中? 在播攑֮毕时, EL?x)自动播放下一内?
    'Random Order Play' : 随机播放; 选中此项, 当播攑֮毕后, EL?x)随机播放下一内? 否则按照安装的ESL评序播放;
    'Don't Automatically Play' : 不自动播? 选中此项? 点击内容列表中的评, q入播放界面中后, 不再自动播放?
    'Medium Font Size' : 中等字体昄内容; 选中此项? EL用标准字体尺寸的120%昄内容;
    'Large Font Size' : 大字体显C内? 选中此项? EL用标准字体尺寸的150%昄内容;
    'Automatically Hide Tile' : 如下面两个图片对? 选中此项, 播放界面中的Title部分在1.5U后自动隐藏,以增大内Ҏ(gu)C面U?
     'Automatically Speak Words': 自动播放单词发音. 在背늕面中, 当单词加载到界面中时, 自动播放其发?
     'Random Load Words': 随机加蝲单词. 默认情况? ELҎ(gu)单词?分数'大小军_加蝲的顺?
     'Show Word Explanation': 昄单词解释. 当选择了单词的'熟?zhn)?? EL显C单词的解释; 如果关闭此选项, 在选择? EL判定选择'正确', q直接加载下一个单?
     'Double Check Result': 再次判定选择的结? 在选择单词'熟?zhn)?? 用户可以再次判定选择是否正确, 以此来调整单词的分数; 如果关闭此项, 界面中将只现?正确'选择?
     'Auto-Delete High Score Words': 自动删除高分单词. 随着对单词的'熟?zhn)?, 单词的分数将不断增长, 当增长至指定值时(目前?0), 通过此选项可以自动删除q些高分单词.<


    Don't Load Extension Words : 在词典界面中查询? 有些单词是其它单词的'Extension'形式, 比如Searches是Search?Extension'. 当选中此项? Searches不?x)被查询出?


  8. 下蝲选项
    通过下蝲界面, 可以使用WIFI|络下蝲更新EL的内容包. 选中菜单中?Download'菜单,可打开如下EL下蝲界面.
    在配|界面中,输入正确?Request Code'?Check Code'?点击'Submit'按钮. EL开始下载指定的内容? q在androidpȝ状态栏中显C如下通知信息.
    EL的内容包相关信息在另外的帖子中说明(主要是内容包q没有时间去开始制?..), 目前只能提供一个测试用内容? 下蝲信息如下:
    Request Code : 0000-3-00-00
       Check Code : 0-00-00

    在下载界面中输入以上数据, 可以通过WIFI下蝲到ESL的第十五内容内容压~包. 目前EL只能通过WIFI下蝲内容? 那是因ؓ(f)内容包比较大, 一的大小在七到八兆间. 我曾计划十篇一个包, 那就要八?ji)十兆? 后来攑ֈ五篇一个包,也要四十兆左? 所以还是用WIFI方式下蝲比较? 如果需? 以后可以d配置, 支持3G{数据链路下载方?
    当压~包下蝲完成? EL?x)自动安装内容? q在pȝ状态栏中有如下通知信息.


    ׃EL下蝲使用的是pȝ提供的标准下载组?标准? 都可以在pȝ自带的下载管理应用中看到EL的下载内?, 因此在下载过E中, 不媄(jing)响EL的? 也可被关? 当EL再次启动? ?x)自动检查下载状? 以确认是需要导入已l下载的内容? q是需要重C? ׃使用了标准下载组? 有时点击'submit'? gEL没有反应, 请再多等? 状态栏上的下蝲通知׃(x)昄出来? 点多了啊, 那就?x)有多个下蝲?..
    另外, ׃数据存放的服务器都是W三方的I间, 一个是国内? 一个是国外? 下蝲质量和速度没法控制, 甚至一ơ的q接数我都不控制不了, 所以这里先说抱歉了...(求包? 求空?..)

9. 版本升
    EL升只需下蝲新的apk? 然后安装卛_, 原有已下载安装的内容包不?x)丢q; 因ؓ(f)和ESL评相关的内定w存放在SD卡上. 

10. (g)查内容包更新
    q个是EL 1.3.0中添加的功能, 如下图所C?


    点击'Check for new packages'按钮, EL取回EL内容包的更新列表, 更新列表含有三列内容: 内容包的序号, 更新旉和ESL评.

Release 1.5.0 更新:

1. 自动下蝲/安装新版?/span>
    q个功能应该在ELW一版的时候就该支? EL没有攑ֈM?应用商店'? q意味着不会(x)自动通知和下? 每次更新都要用户下蝲apk? 然后再安? q真是罪q啊...对不起啊, 我也是才惌v? 所以赶紧就加上?
    如下图所C? 当点?Check for new packages' 按钮? 如果EL发现有新版本? ׃(x)自动提示是否下蝲安装. 在确认下载安装后, EL?x)开始下载新版本, q在下蝲完成时自动安?


    下蝲提示只会(x)每次(g)查新包时?x)提CZ? 但在About界面中M(x)昄最新版本的(Latest Version is xxx). 另外, EL的数据是攄在sdcard上的, 只要不删除数据文? 更新ELq不?x)丢失原来的数?

    q里需要说明下, Ҏ(gu)Android的安全机? q不能保证下载后的EL安装包能够安装成? 可能׃权限, 或者签名等{问题导致无法安装或者安装失? 当失败时, 因ؓ(f)EL安装包已l下载好? 只需要打开sdcard下的/jie/el/cache/el.apk文g手工安装下皆? 不需要再下蝲和拷贝安装EL安装包了. (x像我q样直接全手工制作和安装Android ROM的应该不多吧? q样做的好处是 -- 惛_嘛就q嘛...)

    2. 通知栏中控制播放
    当EL播放时候被切换到后台时?x)有通知昄在通知栏中, 如下图所C? 现在可以直接通过q个通知来控制后台的播放, 而不再需要打开EL? 方便? 


    点击通知中的图标,可以q行相应的操?-- 前一? 播放/暂停, 下一个和关闭. 
    ׃Android 2.3.x不支持这个功? 所?.3.x版本上的EL的播N知q是原来的样? 只能直接点击切换到EL, 而不能像现在q样直接控制播放. 

    另外, 现在只有EL在播放是被切换到后台? 才在通知栏中昄通知. 不再像前面的版本每次播放都现在通知? (省的每次切换是都昄下通知, 好闪?..)

Release 1.6.0 更新

    1. EL的Widget

el_54el_55el_56

 

    上图所C? EL新增的Widget跟其播放界面中的操作栏完全一? 功能也一? 包括播放的快速定位选择. (q个酷不? 我还没见q哪个app像ELq样无聊到在Widget上添加个'菜单', 嘿嘿~) 点击Widget中的EL图标, 可以快速打开EL应用.


   有Q何问题请跟帖或者直接邮件来...最?求关? 求扩?. enjoy it !


codejie 2013-08-24 22:24 发表评论
]]>
EL : 1.2 Releasehttp://www.shnenglu.com/codejie/archive/2013/08/24/202720.htmlcodejiecodejieSat, 24 Aug 2013 14:23:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/24/202720.htmlhttp://www.shnenglu.com/codejie/comments/202720.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/24/202720.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202720.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202720.html快捷方式

1.2 Release 
    加班加点, EL 1.2也敲完了, q次直接release? q样我就不会(x)一直敲啊敲? E_一D|间再说了. 因ؓ(f)q有仉要的事情一直没有时间做 -- EL的内容包.. 

    EL 1.2包括了如下的更新:
    1. 更改应用配色;
    2. 增加词典功能;
    3. 增加三个配置?
    4. 增加两种下蝲code支持;
    5. 修正N多Bugs.

    EL 1.2计划是增加自定义高亮颜色? 但想来还是词典功能比较实? 才决定先增加词典了的, 同时修改?.1 alpha试出的各自bugs. (其它bug需要大家来发现?.), OK,现在EL?.2 Release?



    1. 更改应用配色
    朋友? EL配色?阴暗'? 我说, 要有'? -- 实际是改动下Theme?..


    2. 增加词典功能
    q个才是1.2的主要更新呢. 词典功能很有? 臛_我是q样认ؓ(f)?
    如前面图C? 在应用的标题栏上有个新的'攑֤?图标, 在除播放界面外的其它界面中点?yn)L图标, 卛_q入词典界面; 在播攄面中点击图标不会(x)直接q入到词典界? 需要点击输入键盘中?查询'按钮才能q入. Z可能?x)改成直接在播放界面中显C查询结?
    词典界面如下图所C? 此时输入字母, EL实时显C查询到的单? 默认一ơ显C?0? 如果q有更多单词需要显C? 只需向上拖单词列? EL?x)自动加载剩余符合条件的单? 直至昄全部单词. 说明? 部分讑֤, 其是一些Androidqx, 一ơ肯定不止能昄20?但不用担? 只要拖动一ơ后, EL?x)自动判断出一ơ最多能加蝲多少个单词的.


    点击列表中的单词, 弹出如下解释窗? H口跟内Ҏ(gu)攄面中使用的是相同的窗? 因此点击H口中的单词, 是同样可以用TTS发音? 
    弹出H口的外形做了修? 不在是圆角方? 而是充满屏幕宽度的方形框. q样弹出H口看v来比?q?, q概늎在比?行'不是?

    3. 增加三个配置?br />     如下图所C? 



    Don't Automatically Play : 不自动播? 选中此项? 点击内容列表中的评, q入播放界面中后, 不再自动播放?
    Automatically Hide Tile : 如下面两个图片对? 选中此项, 播放界面中的Title部分在1.5U后自动隐藏,以增大内Ҏ(gu)C面U?


    Don't Load Extension Words : 在词典界面中查询? 有些单词是其它单词的'Extension'形式, 比如Searches是Search?Extension'. 当选中此项? Searches不?x)被查询出?



    4. 增加两种下蝲code支持
    q个需要来自Tempo的徏?-- 他希望下载的request code能够?0000-0-00-00'格式转变成全数字格式, q样在输入是无需切换输入软键盘了. 我接收了此徏? 支持了全数字格式, q支持了一直特D的'直接'下蝲模式, 以备不时之需? 当然, 我不得不? 很多输入法中, 数字?-'号都在同一键盘中的. 但让人换个输入法, L那么?体脓(chung)用户'不是? 嘿嘿..

    最? Z庆祝EL Release, 附送一个EL的内容包, 此包包含了ESL?11?15评内容和mp3数据. 赶紧下蝲? q个包是Taobao上卖的哦, 当然也是目前唯一的一个包..

    Request code: 900001300013
       Check code: 0000

    或?br />    Request code: 0001-3-00-00
       Check code: 0-00-00


codejie 2013-08-24 22:23 发表评论
]]>
EL : Saving Batteryhttp://www.shnenglu.com/codejie/archive/2013/08/22/202692.htmlcodejiecodejieWed, 21 Aug 2013 16:28:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/22/202692.htmlhttp://www.shnenglu.com/codejie/comments/202692.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/22/202692.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202692.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202692.html     下班路上用EL听ESL, 没到家电(sh)池就没了...
    下了? 边走边算计着 -- 应该是高亮全开看小?现在换成<C火之?gt;?.)D没电(sh)? 但ؓ(f)啥以前不用EL? 听个ESL不会(x)没电(sh)?..?x)不会(x)EL比较耗电(sh)?

    晚上火力全开, 反省代码 -- 一个异步线E? 用于通知UI更新播放轨迹? 后台播放时也在不停的running...
    q个U程本n是sleep()个几百毫U? 然后通知UI更新下音频播攄位置. 虽没有数据表明这L(fng)'?U程?x)消耗多大电(sh)? 但本着有CPU跛_, ׃(x)有电(sh)量消耗的原则, 改了...

    private class TickCounterTask extends AsyncTask<Void, Void, Void> {

        @Override
        protected Void doInBackground(Void arg0) {
             while (isAudioPlaying && listener != null) {
                try {
                    listener.onPlaying(player.getCurrentPosition());                    
                    Thread.sleep(777);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                } catch (DeadObjectException e) {
                    listener = null;
                } catch (RemoteException e) {
                    e.printStackTrace();
                }
            }
            
            return null;
        }
    }

    加了listener != null的条? q样当UI被切换到后台? 取消listener, 异步U程卌l止. 嘿嘿, 省了...

    l端讑֤上的app不比PC机的, 除了要考虑UI, Screen Size{问题外, ?sh)量消耗也是必ȝ? M能让Zؓ(f)了一个app, 随n背上个三块电(sh)板不? 再说, CPU占多? 真的??手啊...

codejie 2013-08-22 00:28 发表评论
]]>
EL : getPrev() and getNext()http://www.shnenglu.com/codejie/archive/2013/08/20/202681.htmlcodejiecodejieTue, 20 Aug 2013 15:35:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/20/202681.htmlhttp://www.shnenglu.com/codejie/comments/202681.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/20/202681.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202681.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202681.html    早上一朋友? EL如果支持删除某个评, q怎么能支持getPrev()和getNext()? 我很奇? 为啥不能? 他说, 因ؓ(f)EL的课E号是不q箋? 那么应该是靠q箋的记录IDl箋上下索引? 那么当删除某个记录时, DID不连l? 也就不能正常Navigate? 是不? 除非删除? 一个一??, 以包装连l? 听他说完, 忽然感到L -- 原来'W蛋'不止我一个啊...
    在实现EL对记录的getPrev()和getNext()? 我也为EL的记录表中没有一个连l的记录ID而郁?-- 没有个连lID, 而课E号本n又不q箋, 咋不? 那时都还没考虑删除的问题呢. 郁闷地去睡觉, 半夜惊醒才想? 没有q箋记录ID是设计是觉得这个ID跟课E号在一起太冗余才去掉的, 而getPrev()/getNext(), 完全靠课E号p搞定的啊, 代码敲的都忘记自q初衷? SQL语句也白学了...

    于是我把下面ELContentProvider的片D发l他, q加了句 -- '你咋跟我一L(fng)?..'

    @Override
    public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
        int res = matcher.match(uri);
        String table = null;
        switch (res) {
        
        
        
        case MATCH_ITEM_EL_ESL_RANDOM:
            db = elDBAccess.getReadableDatabase();
            table = "esl";
            sortOrder = "random() limit 1";
            break;
            
        case MATCH_ITEM_EL_ESL_NEXT:
        case MATCH_ITEM_EL_ESL_PREV:
        case MATCH_ITEM_EL_ESL_FIRST:
        case MATCH_ITEM_EL_ESL_LAST:            
            if (res == MATCH_ITEM_EL_ESL_NEXT) {
                selection = "idx>" + ContentUris.parseId(uri);
                sortOrder = "idx asc";
            } else if (res == MATCH_ITEM_EL_ESL_PREV) {
                selection = "idx<" + ContentUris.parseId(uri);
                sortOrder = "idx desc";                
            } else if (res == MATCH_ITEM_EL_ESL_FIRST) {
                selection = null;
                sortOrder = "idx asc";
            } else {
                selection = null;
                sortOrder = "idx desc";
            }
            
            db = elDBAccess.getReadableDatabase();
            
            return db.query("esl", projection, selection, nullnullnull, sortOrder, "1");            

        
        }
        
        
    }
    
   记录在此, 提醒自己保持清醒...

codejie 2013-08-20 23:35 发表评论
]]>
EL : 1.1 alphahttp://www.shnenglu.com/codejie/archive/2013/08/18/202625.htmlcodejiecodejieSun, 18 Aug 2013 12:43:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/18/202625.htmlhttp://www.shnenglu.com/codejie/comments/202625.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/18/202625.html#Feedback1http://www.shnenglu.com/codejie/comments/commentRss/202625.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202625.html
快捷方式
    周末EL新增/更新了如下功?
    1. 标记前次播放的课E?
    2. 快速蟩转到评指定部分;
    3. 清除下蝲记录;

1. 标记前次播放的课E?br />    如下图所C? EL?x)在评列表中前ơ播攄评目的右上角打上?播放'的标? L(fng)图例中的' ESL Podcast 20' ?


2. 快速蟩转到评指定部分
    如用文档中说明? ESL的课E一般分Z个部? Slow Dialog/Explanations/Fast Dialog. 分别是慢速阅? 内容解释和快速阅? q个版本? EL可以快速蟩转到三个部分, 以方便?


    点击最左侧按钮, 选择相应的项目即可快速蟩? 如果当前评不支持蟩? 那么此按钮或者某个菜单项不可操? (一般ESL早期的课E只有前两部?.

3. 清除下蝲记录
    EL的内容包可以直接下蝲, 当下载过E中出错? EL?x)在下次启动? 再次试下蝲. l常出错的原因除了无U网l不E_? 另外一个原因是目前存放内容包的服务器也不稳? EL在设计时是考虑到这中情? ?x)尝试不断下? 直至下蝲成功. q样好的一个想法和机制, 在实际用中却碰C问题 -- 无限ơ数试. EL一启动, 如果发现有内定w要下? 那就开始下? 甚至同一个下载内容会(x)同时多个下蝲出现(? q个是bug..). 所? ELq次提供个功? 用户可以清除所有下载项? 当需要下载时, 再次输入request code好?


    q次修改涉及(qing)C数据库的修改, 但升U时, 不用卸蝲前一个版? 直接下蝲安装好? EL?x)自己搞定这些?



<---- 关于上传p| ---->
   q两天做了两个测试用的内容包, 一?5+MB, 一?0+MB, 上传? 无数ơ的p|?..x今年'狠心'把宽带升U到4MB? 怎么q是慢到p|? 后来发现?-- 要可靠上? 同样?x??...(你要问ؓ(f)啥中间有个x? 谁知道呢, 说我x墙是太敏? 不让?.ri?.)

codejie 2013-08-18 20:43 发表评论
]]>
EL : It is alpha!http://www.shnenglu.com/codejie/archive/2013/08/15/202525.htmlcodejiecodejieThu, 15 Aug 2013 13:20:00 GMThttp://www.shnenglu.com/codejie/archive/2013/08/15/202525.htmlhttp://www.shnenglu.com/codejie/comments/202525.htmlhttp://www.shnenglu.com/codejie/archive/2013/08/15/202525.html#Feedback0http://www.shnenglu.com/codejie/comments/commentRss/202525.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/202525.html    l过40多个夜晚的连l敲啊敲,EL(正式名称为ESL with LAC)l于敲到alpha版了, 也意味着l于可以见h了~~点击q里下蝲体验!

    EL (ESL with LAC)到底是啥?

    先闲扯下为啥?x)敲q个应用 -- 那是一个^常的下班时刻,公交车上的我听着ESL,看着手机中的<蜀山剑侠传>, 忽然x中传来一D话(忘记那句?.)打断了我,心中是知道那句话到底是什?来回重复听了N?是想不起其中某个单词怎么写和其意? q么一?有了现在的EL的构?-- Z不把ESL和LAC的词典合q在一h到android中呢? 于是本着应用因实用而生 (LingosHook也是q样来的) 的原? 兴奋地提前一站下?开始在脑中画vEL的框架图?..

    EL是ESL(www.eslpod.com)?a href="http://www.shnenglu.com/codejie/archive/2012/08/30/164888.html">LAC (LingosHook Android Client)的结?-- ESL,x跟我一?一?/strong>努力'学E文的同学应该比较了解?ESL是比较注重听说和实用的E文教E?几乎每天都有更新,伴随着mp3和script,每篇?x)着重讲解一些单词或语句的意思和用法; LAC?本来是尝试将LingoshookULAndroidq_上的应用,后来却偏向词怺...两者结?-- 前者提供mp3和script,后者提供其中重要单词的解释说明的即时查?

    x?敲v来就是痛苦了, 但现?最痛苦的初始阶D过M, 请同我一起n受这alpha版发布的愉快时刻?

    点击q里下蝲安装 -- EL应用?a href="http://www.shnenglu.com/codejie/archive/2013/08/13/202526.html">使用说明文档.

    q里多说?-- EL应用目前是个人发? 提供有限下蝲, 因ؓ(f)计划收益来自其所需的内容包,所以不?x)包含Q何广告信?(x也没人喜Ƣ学E文时看广告吧). 现在q没有时间开始制作内容包, q且也没有找好服务器存放q些内容? 所以可以提供下载的内容包一D|间内怕还是很有限? ?有时也会(x)x, 最好有人直接把EL包养?q样内容包的制作和存?下蝲问题p决了..
    关于EL应用安全问题, 只能说我敲的代码中不?x)有M?不安?指o(h),应用所需'|络讉K权限',仅用于下载内容包, q用的是android提供的标准下载组?

    ? 求有??者愿意帮忙测试下EL? 可以通过邮g或者跟帖反馈问? 当然最好能直接?a >esl-lac上提交issue report, q样便于跟踪. 先谢谢了...

    alpha版本? 希望可以把问题都暴露出来, 后面如果没啥大问? 那就直接release? 中间不再d新的功能, 多数旉攑֜内容包的制作? 毕竟EL只是个壳, 真正有用的还是内容啊..不过, 目前我还是有计划d如下功能? 

    1. 记录前次播放位置 (1.1)
    2. 记录播放历史 (2.0)
    3. 快速蟩转到评某些标记位置 (1.1)
    4. 删除指定评 (2.0)
    5. 查询输入的单? 词典功能 (2.0)
    6. 自定义高亮单?(2.1)
    7. 查询选中单词 (2.2)
    8. 生词理/辅助记忆 (2.0) (q个是LAC的功能啊...)
    9. 自定义高亮颜?(1.5)
    10. 自定义课E?(3.0)
    11. 导入LingosHook数据 (3.0)

    如何? 你还有啥需求不?

    括号中的数字标识的是功能可能出现的版? 现在?.0?..当然׃面这? 如果真的都能搞定, 怕都要两q后的事情了? 嘿嘿...

codejie 2013-08-15 21:20 发表评论
]]>
LingosHookQLingoes生词本下载页http://www.shnenglu.com/codejie/archive/2010/07/23/108996.htmlcodejiecodejieFri, 23 Jul 2010 08:56:00 GMThttp://www.shnenglu.com/codejie/archive/2010/07/23/108996.htmlhttp://www.shnenglu.com/codejie/comments/108996.htmlhttp://www.shnenglu.com/codejie/archive/2010/07/23/108996.html#Feedback187http://www.shnenglu.com/codejie/comments/commentRss/108996.htmlhttp://www.shnenglu.com/codejie/services/trackbacks/108996.html
应用 版本 上传旉 下蝲地址 更新记录 注释说明
New I;P preview v3 2014.04.06 google play install

apk download
1. add achievement and leaderboard
更新说明
I;P (I'm a Programmer) preview v12.0 2014.04.01 google play install

apk download
1. add new four stages from Leo into Unsolved pack;

I;P (I'm a Programmer) preview v11.0 2014.03.30 google play install

apk download
1. support to break execution anytime; 
2. add new four stages into Unsolved pack;

I;P (I'm a Programmer) preview v10.0 2014.03.28 google play install

apk download
1. support to execute Step by Step;
2. add new three stages into Unsolved pack;
3. add a new tutorial stage;
更新说明
I;P (I'm a Programmer) preview v9.0 2014.03.25 google play install

apk download
1. support shot Menu screen;
2. add new 2 stages into Easy pack;
更新说明
I;P (I'm a Programmer) preview v7.0 2014.03.21 google play install

apk download
1. adjust stages;
2. fixed some bugs;
更新说明
I;P (I'm a Programmer) preview v6.0 2014.03.17 google play install

apk download
1. Move all unsolved stages to 'Unsolved' pack, please feedback your solution!

I;P (I'm a Programmer) preview v4.0 2014.03.14 google play install

apk download
1. fixed some bugs

I;P (I'm a Programmer) preview v3.0 2014.03.13 google play install

apk download
1. fixed some bugs
2. show source in target window while done

I;P (I'm a Programmer) preview v2.0 2014.03.12 google play install

apk download
增加高亮支持 在线文档
I;P (I'm a Programmer) preview 2014.03.07 google play install

apk download
在线文档
 EL (ESL within LAC)  1.6.1  2013.11.10 google play install

EL_1.6.1.apk
1. 支持'中文';
2. dGoogle Play;
更新说明
 LingosHook -WordExport  1.1.1  2013.10.29 WordExport.zip
1. 支持部分自定义输出格?/div>
更新说明
 EL (ESL with LAC)  1.6.0  2013.10.22  EL_1.6.0.apk
1. 新增EL的Widget;
2. 修正包下载bugs;
3. 重新设计播放接口;
4. 重写UI切换代码;
更新说明
 EL (ESL with LAC)  1.5.0  2013.10.09  EL_1.5.0.apk 1. 自动下蝲/安装新版?
2. 通知栏中控制播放;
更新说明
 EL (ESL with LAC)  1.4.0  2013.09.28  EL_1.4.0.apk 1. 新增背诵(Reciting)功能;
2. 新增生词?Vocab)功能;
更新说明
 EL (ESL with LAC)  1.3.0  2013.09.07  EL_1.3.0.apk 1. 新增'check for new packages';
2. 修正切换ESL播放异常;
3. 修正2.3.x下的下蝲兼容问题;
更新说明
 EL (ESL with LAC)  1.2.2  2013.09.02  EL_1.2.2.apk 1. 修正2.3.xq_兼容问题 更新说明
 EL (ESL with LAC)  1.2.1  2013.08.26  EL_1.2.1.apk 1. 修正播放状态栏提示Bug 更新说明
 EL (ESL with LAC)  1.2  2013.08.24  EL_1.2.apk 1. 新增词典功能 更新说明
 EL (ESL with LAC)  1.1alpha  2013.08.15  EL_1.1.apk 1. 标记前次播放的课E?
2. 快速蟩转到评指定部分;
3. 清除下蝲记录;
 EL使用说明
 EL (ESL with LAC)  1.0 alpha  2013.08.15  EL.apk  alaph版本说明  EL使用说明
LingosHook x64 1.6.700 2013.04.24 LingosHook-Setup_x64 1.支持x64
2.不包含Q何插?/td>
?a href="http://www.shnenglu.com/codejie/archive/2013/04/24/199667.html">q里
LingosHook Android Client v2 2013.04.06 DemoDictionayOfLAC2.apk Native Dictionary Demo ?a href="http://www.shnenglu.com/codejie/archive/2013/04/06/199142.html">q里
LingosHook Android Client v1 2013.02.13 DemoDictionayOfLAC2.apk Native Dictionary Demo ?a href="http://www.shnenglu.com/codejie/archive/2013/02/13/197822.html">q里
LingosHook 1.6.700 2013.01.07

LingosHook-Setup

LingosHook-Mini-Setup

1.修正Index面?使用'copy to tag'菜单时崩溃问?

更新说明?a href="http://www.shnenglu.com/codejie/archive/2013/01/07/197089.html">q里Q?/td>
LingosHook Plugins - WordExport 1.0.1 2012.10.23 WordExport 1. 支持按照单词字母序和添加顺序导? 更新说明?a href="http://www.shnenglu.com/codejie/archive/2012/10/23/193750.html">q里?/td>
LingosHook Android Client 1.1.1 2012.08.30 LAC

LAC
1. 修改数据导入?无Word数据;
2. 修改数据导入?无Word数据昄;
更新说明?a href="http://www.shnenglu.com/codejie/archive/2012/08/30/188681.html">q里?/td>
LingosHook Android Client 1.1.0 2012.08.28
1. 支持XML格式导入;
2. 支持单个数据导入;
3. 支持q程(HTTP)方式导入;
4. 增加'Html界面点击'配置.
更新说明?a href="http://www.shnenglu.com/codejie/archive/2012/08/28/188560.html">q里?/td>
 LAC  1.0.0  2012.08.02 LAC
LAC
CET-4
CET-6
CET-4&6
MyDB
1. Beta后第一版;
2. 提供四个实例数据库;
1. 更新说明看这?/a>Q?br /> 2. LAC帮助文档在这里!
LingosHook 1.6.618 2012.06.18 LingosHook-Setup
LingosHook-Mini-Setup
1. 支持删除‘无匹配数?#8217;单词 更新说明?a href="http://www.shnenglu.com/codejie/archive/2012/06/18/179305.html">q里?/td>
LingosHook  1.6.061  2012.06.01 LingosHook-Setup
LingosHook-Mini-Setup

1. 支持Tag下所有单词移动到另外Tag下;
2. 支持HTML数据优化Q?br /> 3. 更新WordExport插gQ?/p> 4. 修正‘数据dBug'Qƈ新增DataCleanup插gQ?br /> 5. ForDonator插g更新Q?br />

1. 更新说明?a href="http://www.shnenglu.com/codejie/archive/2012/06/01/177047.html">q里Q?br /> 2. 宝六一快乐Q?/td>
LingosHook 1.5222 2012.02.23

LingosHook-Setup

LingosHook-Mini-Setup

1. 支持一定范围内的单词批量删除;
2. 支持Tag的更名;
3. dLingosHook主页的显C和讄Q?br /> 4. 修改插g接口Q?br /> 5. 修正'天天背单?中快捷键无法使用键盘的问题Q?br /> 6. 更新版本?.5.xxxQ?/p>

更新说明?a href="http://www.shnenglu.com/codejie/archive/2012/02/22/166260.html">q里Q?/td>

[q里?a href="http://www.shnenglu.com/codejie/archive/2010/04/08/112016.html">Q&A链接,刚从面最后行拯上来?.有问题请查看?没有的请?a href="mailto:codejie@gmail.com">mail,辛苦各位了~]

升说明Q?br />     1. 不徏?/span>删除原来的LingosHookQ直接安装覆盖就好;

插g安装说明Q?br />     1. 直接插件放到LingosHook应用目录下的plugins子目录中卛_Q?br />     2. 各位DonatorQForDonator插g当前是兼容的Q有M问题Q请直接M我?br />

<---- 下面是原来的更新记录Q是不是上面的更好点啊) ---->


    LingosHook上传没有30分钟Q就发现两个BugsQ那x后面可能的更C(x)更多Qؓ(f)了防止到处修改下载地址Q统一攑֜q里Q这h一ơ就好了Q嘿嘿~?br />
    LingosHook当前版本点击q里下蝲Q最安装包Q不包含VC RedistributableQ?a >q里下蝲。(请安装前杀毒,安全W一~)

      
版本 上传旉 修改记录 注释说明
0.5.100 2010.03.05

1.TinyHtmlParser对象内存泄露错误

2.Unhook操作异常

界面说明?a href="http://www.shnenglu.com/codejie/archive/2010/03/05/108812.html">q里
0.5.700 2010.03.10

1.增加自动Hook功能

界面说明?a href="http://www.shnenglu.com/codejie/archive/2010/03/10/109394.html">q里
0.7.100 2010.03.25

1.增加Tag功能

1.Tag的用说?a href="http://www.shnenglu.com/codejie/archive/2010/03/25/110490.html">q里
2.版本更新说明q里
3.׃数据库表发生了变化,安装前请一定要手工删除原有的数据库文g
(文g名称为lingosHook.db3Q缺省安装目录ؓ(f)C:\Program Files\Jie\LingosHook)

0.8.000 2010.04.01

1.增加Memory Daily功能

1.可以背单词了?
2.版本更新说明以及(qing)Memory Daily功能使用说明q里

0.8.200 2010.04.08 1.修改TinyHtmlParser对象Q以提高识别能力 改动说明?a href="http://www.shnenglu.com/codejie/archive/2010/04/08/112011.html">q里
0.9.000 2010.04.14

1.支持朗道英汉词典QLangdao EC DictionaryQ?/p>

2.增加生词右键ContextMenu理菜单

1. l于可以说支持多词典了(虽然׃个,Vicon和LangdaoQ;

2.版本更新?qing)用说明?a href="http://www.shnenglu.com/codejie/archive/2010/04/14/112572.html">q里Q?/p>

0.9.200 2010.04.15 1. 支持HTML强制截取功能Q?/td> 1. 版本更新?qing)用说明?a href="http://www.shnenglu.com/codejie/archive/2010/04/16/112738.html">q里Q?/td>
0.9.640 2010.04.20

1. 支持语音了;

2. 支持模糊H口句柄定位了;

1. 版本更新?qing)用说明?a href="http://www.shnenglu.com/codejie/archive/2010/04/19/113029.html">q里Q?/td>
1.0.000 2010.04.29

1. 增加'Memory Daily'快捷操作方式Q?/p>

2. 支持自动语音Q?/p>

3. Open SourceQ?/span>

1. 版本更新?qing)其使用说明?a href="http://www.shnenglu.com/codejie/archive/2010/04/29/113961.html">q里Q?/p>

2. Open Source信息?a href="http://www.shnenglu.com/codejie/archive/2010/04/29/113969.html">q里Q?/p>

1.0.001 2010.05.04

1. 增加更多的Memory Daily快捷操作方式Q?/p>

2. 修正了FilterShow对象的bugs?/p>

1. 版本更新说明?a href="http://www.shnenglu.com/codejie/archive/2010/05/05/114396.html">q里Q?br /> 2.. 可以在Googlecode.com上下载了,q里Q?/p>

1.0.002 2010.05.05 1. 修正HTML解析对象bug 1. 随笔?a href="http://www.shnenglu.com/codejie/archive/2010/05/05/114521.html">q里Q?/td>
1.0.003a 2010.05.14 1. 引入TidyQ用于预处理HTML数据Q?/td> 1. 版本说明?a href="http://www.shnenglu.com/codejie/archive/2010/05/14/115322.html">q里Q?/td>


codejie 2010-07-23 16:56 发表评论
]]>
Ʒþþþþþapp| ޾þþþþ77777 ޾Ʒþþþϼ | ޺ݺۺϾþѿ| ҹƷþþþþþ| žȾþƵ| þ99Ʒžžžþ| 91Ʒۿ91þþþþ| ݾƷŮ˾þþþþ | ˺ݺۺϾþ޸| Ʒ޾þþþþ| ھƷþþþù| þþWWW˳ɾƷ| þҹҹݺ| ޾ƷŮþþ| Ʒѿþþ㽶| þþƵ| պƷþþþþþõӰ| ݹƷþ| Ʒþþþþ³| þۺɫһ| þþþùƷ| ƷŮþþm| þ99Ʒһ| 7777Ʒ˾þþô߽| 69Ʒþþþþ޾Ʒ| þþƷ99þ㽶ɫ | þþ뾫Ʒպý | ٸ߳ҽоþþþþ | ˾þþƷ| þþƷŷƬ| ޹Ʒþþϼ2| þ99Ļþ| 99REþþƷﶼǾƷ| ޹Ʒþþϼ2| ѹۿþþƵ| 777ҹƷþav| 99ȾþֻоƷ68| 99ƷۺϾþþþ| ˾þ111վ| þþŷղAV | ۺϾþþ|