Linux手机DIY.夏新E600和飞利浦968的重大突破
一、序
夏新E600和飞利浦968终于在同一天取得了重大突破!皆可以执行自定义的Shell
脚本!在这样还是要感谢那些无数次重启试机的朋友们。
昨天无意翻到一个贴子,说得是Shell的解释执行,忽然想到目前尝试的Shell
脚本,全是想当然的用/bin/bash解释运行,如果飞利浦968不存在这个可执行文件
是绝对不可能运行的。
我在论坛上翻到“新号码”从夏新E600升级包提取的文件内容,找个遍发现有ash,
也有sh,却惟独没有bash。我隐隐感觉到有可能原因就出在这里。
二、重要提示
为了方便更好的理解本文,提供下面链结。
全系列的文章地址,手机应用开发专栏:http://blog.csdn.net/liwei_cmg
相关的重要资源的下载地址:http://play.younet.com/view.php?tid=24045
三、尝试过程
将原包在Linux用tq用户解包(tar xvf qnes.prg),将qnes替换为Shell脚本,
脚本内容如下(先不指定用哪个Shell解释):
exec audioplayer &
exec cp /mnt/user/cec/apps/6Self-Defined/*.desktop /mnt/doc/user_local/qnes/. &
exec ls > /mnt/doc/user_local/qnes/ls.txt &
exec ls > /mnt/doc/user_local/ebook/ls.txt &
用我的打包脚本(初探一文中已有具体示例),执行打包操作,让铁蛋安装,发现没有任何
反应。我又把Shell脚本加了一行语句 “#!/bin/sh”,即换成让/bin/sh来解释执行,即如下内容:
#!/bin/sh
exec audioplayer &
exec cp /mnt/user/cec/apps/6Self-Defined/*.desktop /mnt/doc/user_local/qnes/. &
exec ls > /mnt/doc/user_local/qnes/ls.txt &
exec ls > /mnt/doc/user_local/ebook/ls.txt &
再打包让铁蛋安装执行,意外出现了,发现qnes目录有了txt文件,也有了一堆
desktop文件,说明Shell在968上是完全执行成功了!
至于exec audioplayer & 这句只是根据“新号码”提取的E600中desktop文件猜想的,
无关紧要。
既然飞利浦968可以执行成功,我就自然想到了在E600再试下这个程序,E600不能运行模拟器
qnes也有可能是缺少库文件,让“电子奴隶主”安装试了一下,果然也成功了,并且媒体播放器也启
动成功了,显然exec audioplayer &这个在飞利浦968执行失败的语句,在夏新E600就没问题了!
“电子奴隶主”还把复制来的所有desktop文件和生成的ls文件打包发给了我一份。
四、总结
关于飞利浦968和夏新E600的目前安装包,我都是在Linux tq用户下用tar命令按顺序打包
的,详细方法可参考初探一文。其他在Windows下的打包方法没有做尝试。
两款手机的Shell脚本也能成功运行,惟独的是Install.conf这个文件还没有参透,不过
以后在对飞利浦和夏新操作系统进一步研究过程中,我们会知道的越来越多。
Shell的成功运行意味着DIY和第三方软件完全可行。至于能做什么就要看你想做什么了。
目前通过执行几个简单Shell也获取了一些重要信息,可以查看http://play.younet.com/view.php?tid=24045。
五、扩展手机应用总体思路
通过运行Shell脚本,我们就可以知道整个操作系统的结构,包括Linux内核应用和上
层图形化系统。从而一步一步获取系统软件和外部软件管理运行的方式和环境,以及涉及
的相关库文件(lib),资源文件(png,res)。最终完成交叉编译开发移植第三方软件。
目前可以简单展望一下Shell脚本所带来的根本性变化。
A.实现对现有手机系统功能的扩展和改进
原有手机系统程序大多数都是通过配置文件进行管理,这类配置文件是对用户完全封
闭的。有了这个缺口,可以完全了解这些相关配置信息,灵活扩展手机程序的功能。
B.完全了解所有用户操作对968手机系统的影响,以及个人数据在968上的存储方式。
飞利浦和夏新手机的主清除和主复位百分之九十九是两个不同的Shell脚本,不用多说
了,看看脚本内容就知道他做了些什么。
C.通过Shell编程本身扩展手机功能应用
目前E680上的大量软件是采用了Shell脚本来实现,如telnet,虚拟内存扩展,蓝牙
telnet,进程监视,内存监视,数据备份,MPKG安装卸载等等。这个得需要看具体的需求
了。
D.移植开发QTE,OPIE等一些其他的第三方软件
这方面内容就太多了,不过需要一些技术问题需要解决,下面会详细介绍。
E.开发基于系统图形化框架的软件
这个是比较难的,因为没有开放图形化SDK,下面也会详细说明。
六、未来方向的几个重要疑问。
疑问一.Shell脚本既然可以运行,能不能通过USB实现telnet?这个问题很复杂,我也不清
楚。倘若能通过努力完成telnet,那DIY就太过方便了,不用老是重装Qnes安装包,来运行不同
的Shell了。完全就可以在Windows下操作飞利浦968和夏新E600!
疑问二.原qnes.prg包中的qnes可执行程序,也是兼容ARM指令集,不过是基于Linux2.0.0
内核的,具体两款手机支持什么样的内核版本,目前还不知道。我手里可用的交叉编译工具是
ARM,Linux 2.4.3的内核版本,这个版本编译的可执行程序在E680(Linux 2.4.0)是完全可以运
行的,但不知道在飞利浦968和夏新E600上能否运行。
要知道E600和968本身可执行程序的内核版本,很简单。只需要写个Shell脚本,复制过来
几个可执行文件,用Linux命令file看一下便知。
如果现有的Linux 2.4.3编译的程序不能运行,还需要构建一个基于Linux 2.0.0的低版本
交叉编译环境。
疑问三.夏新E600和飞利浦968从理论上讲是这种结构---Linux内核+Qte+图形化框架,这个
和E680系列本质是一样的,不过飞利浦的Linux内核代码未公布,而E680系列内核代码是开放的。
Qte和上层图形化框架两者倒是一样,都没有公布源代码。不过E680却拿到了A760(可能是)的上
层图形化的开发包。所以一些兴趣爱好者就使用上层图形库很容易开发出第三方软件了
(如ezxplayer,抓图软件...等)。这些个E680系列软件从理论上是不能通过简单的交叉编译移植
过来的,因为两者的上层开发包是不一样的。不过在移植Qte和OPIE等这类软件,两者却是完全
一样的,说不定夏新E600和飞利浦968比E680会更容易。须要解决的问题就是疑问二中所提到的。
可见开发基于上层图形化框架的软件是不容易的,移植Qt,OPIE的软件倒是可行,而Linux底
层设计由于没有公开内核代码是不太可能的。
七、附录
通过执行上面的脚本,获取夏新E600中的部分内容,仅作示例。
exec cp /mnt/user/cec/apps/6Self-Defined/*.desktop /mnt/doc/user_local/qnes/. &
作用:复制 自定义目录下所有的desktop文件到qnes目录下
020javamanager.desktop
[Desktop Entry]
Type=MimeType
MimeType=application/x-javaAMS
Comment=AMS
Exec=AMS
Shell=j9 -Xmjit -Duser.home=/mnt/doc -DExec=AMS -jcl:midp20 javax.microedition.lcdui.AppManager /mnt/cellon/ibm/midlet/AMS/AMS.jad
Icon=common/menu/C8000_menu_user_define_JAVA.png
Name=Java manager
Name[en]=Java manager
Name[zh_CN]=Java管理器
Name[zh_TW]=Java管理器
040ColorBall.desktop
[Desktop Entry]
Comment=ColorBall
Exec=ColorBall_Amoi
Shell=j9 -Xmjit -Xss6k -jcl:midp20 -Duser.home=/mnt/doc -DExec=ColorBall_Amoi -cp /mnt/cellon/ibm/midlet/ColorBall/ColorBall_Amoi.jar javax.microedition.lcdui.AppManager /mnt/cellon/ibm/midlet/ColorBall/ColorBall_Amoi.jad
Icon=common/menu/C8000_menu_user_define_colorball.png
Type=Application
Name=ColorBall
Name[en]=ColorBall
Name[zh_CN]=滚滚球
Name[zh_TW]=滾滾球
...
exec ls > /mnt/doc/user_local/qnes/ls.txt &
作用:显示系统可执行文件目录下所有内容
SMALLP.BNK
alarm
alerttest
amoi
audioplayer
audiorecorder
broadcast
calculator
calendar
...
Linux手机DIY.夏新E600和飞利浦968的重大突破相关推荐
- 飞利浦linux手机,Linux手机DIY.夏新E600和飞利浦968安装包专题
Linux手机DIY.夏新E600和飞利浦968安装包专题 草木瓜 2006-10-25 一.序 夏新E600和飞利浦968两者都只识别Linux下tar格式的包文件,Alzip是在 Windows ...
- Linux手机DIY.夏新E600和飞利浦968移植软件的开始
一.序 不过几天的时间,我们已经能获取夏新E600和飞利浦968的大量内部信息, 我曾经考虑过先实现telnet,不过现在我觉得还是应该加快移植第三方软件的 步伐了,因为所有的条件都已成熟! 二.重要 ...
- Linux手机DIY.夏新E600和飞利浦968初探
一.序 无意中被小叶拉来,协助破解夏新E600的第三方软件安装.虽经过众位兄弟的齐心 努力,然至今却未能取得突破性进展.失败了无数次,也否定了无数次设想和可能.一 个人的能力有限,所以我想对这几天的努 ...
- 手机构建Linux环境,Linux手机DIY.构建统一安装包
Linux手机DIY.构建统一安装包 草木瓜 于 2006-11-25 一.序 因为夏新E600与飞利浦968差异比较大,所以有必要对安装进行一次标准性 的统一.subtle早在几天前就针对目前安装 ...
- Linux手机DIY.移植软件专题.Qt/Qte的编译环境
Linux手机DIY.移植软件专题.Qt/Qte的编译环境 草木瓜 于 2006-11-15 一.序 一个偶然的想法,把在夏新E600出现Segmentation Fault的QT程序放在 Moto ...
- 飞利浦linux手机,飞利浦968手机 采用Linux系统
飞利浦968手机 飞利浦的第一款采用Linux系统,高端定位的智能手机飞利浦 968,从去年上市之初,就凭借其强大的功能.不俗的外表,再加之难能可贵.适中的价格,在市场中受到了不少的关注. 飞利浦 9 ...
- 飞利浦linux手机,LINUX超长待机 百万像素飞利浦968评测
前言 进入2005年后,飞利浦一方面在努力维护着自己"超长时间待机神话"的形象,另一方面也逐渐开始向多元化发展.而在这其中,飞利浦968无疑是最引人注目的一款.它不仅是" ...
- 2005年linux手机系统,三系统五大平台 05年22款智能手机横评
不知道有多少朋友还记得我们中关村在线手机频道于今年初推出的<巅峰对决 2004年14款智能手机横向评测>这个大型专题.时间过得很快,转眼间,又一个365天飞逝而过,也到了我们为2005年智 ...
- 摩托罗拉为什么要限制自家linux手机,摩托罗拉为何在安卓手机大放异彩的时候,突然开始衰败了呢?...
摩托罗拉从一开始就走在了安卓的道路上,并且魅力四射,可以说一时间也是风光无比.对比诺基亚坚定的走向WP之路,这一点摩托罗拉没有走错. 安卓当时的热门机中,摩托罗拉的里程碑系列可以算作是经典之作.销量也 ...
最新文章
- linux 编译器错误,linux – GHCi – Haskell编译器错误 – /home/user/.ghci归其他人所有,IGNORING...
- 工作随笔之nginx 应用场景
- linux内核和w,Linux内核中Makefile、Kconfig和.config的关系
- ADO.NET中SqlCommand对数据库操作
- 最小生成树的Prime算法的思想
- Codeforces Round #395 C
- h3c交换机怎么设置虚拟服务器,H3C交换机配置 | 如何实现两个网段主机与外部通信...
- Nginx服务器学习(一)CentOS7系统安装Nginx
- java使用derby增删改查_JDBC 笔记3 通过PreparedStatement 对数据库进行增删改查 (转载)...
- 在Windows Server 2012R2离线安装.net framework3.5
- 数据分析法、数据分析方法论总结
- cobar mysql_mysql分布式中间件cobar
- 人均GDP将破1万美元对中国意味着什么?
- 【unity shader】unity游戏特效-仿《崩坏3》希儿魇夜星渊大招特效(运用CommandBuffer和屏幕后处理)
- 两道类似的概率期望题目
- Centos配置NFS
- JAVA第一次实验 ——凯撒密码
- Funexpected宣布推出全新的遵循渐进式课程,它有直观界面、丰富多彩的游戏世界、个性化数字导师等
- ACM2019春季训练- How Many Tables HDU - 1213(初识并查集+转倚天屠龙记故事)
- 推荐一个很不错的桌面便笺工具magic notes