当前位置: 编程技术>移动开发
本页文章导读:
▪LG KG90n屏幕闪动有关问题和联网时弹出系统提示窗口闪动有关问题 LG KG90n屏幕闪动问题和联网时弹出系统提示窗口闪动问题
LG KG90n是中国移动游戏基地手机系列中的一款,240x320分辨率的屏幕,不支持蓝牙,下载jar的时候只能使用OTA (Over The Air)下.........
▪ 手机不需要无路线由利用WIFI连接到电脑,简单可行 手机不需要无线路由利用WIFI连接到电脑,简单可行
转自:http://bbs.gfan.com/viewthread.php?tid=422121&extra=&page=1首先在电脑端的设置和蛋疼哥的差不多的,只是在W7下更简单些,先说W7下的 .........
▪ 手机形式 手机模式
1. 普通启动模式就是普通电源键开关机,有点废话了,呵呵。。 2. 安全模式(很多人不知道)大家可能对安全模式不太了解,其实就和电脑上一个道理,安全模式中系统只加载系.........
[1]LG KG90n屏幕闪动有关问题和联网时弹出系统提示窗口闪动有关问题
来源: 互联网 发布时间: 2014-02-18
LG KG90n屏幕闪动问题和联网时弹出系统提示窗口闪动问题
LG KG90n是中国移动游戏基地手机系列中的一款,240x320分辨率的屏幕,不支持蓝牙,下载jar的时候只能使用OTA (Over The Air)下载且下载速度极慢,一般需要五六分钟。不过总体来说性能还可以。做j2me应用时,jar包可以达到600k以上,内存也还算充裕。但是有手机的jvm不是特别完善,开发时如果不注意会出现一些难缠的问题。
以下就是我遇到过的2个问题,试验了多遍得出的结果。
1,屏幕闪动问题
现象:进入游戏后,屏幕总是会闪动,但其实游戏还算流畅。
问题出在屏幕刷新,该手机不允许一帧内对屏幕进行两次刷新。何谓两次刷新?对比一下代码比较好理解一点。
问题代码:
修改后无问题的代码:
对比代码可以发现,看问题代码,可以知道前面说的‘两次’是:一次是直接网手机屏幕上画东西,一次是在buffer上画东西,然后再画到屏幕上。而无问题代码的做法是:在画图之前,先看是否有buffer,如果有buffer则把所有东西都画到buffer上,然后再一次性画到手机屏幕上,如果没有buffer,则把所有内容直接画到手机屏幕上——这样就不会出现闪动的问题了。
2,在联网时弹出系统提示窗口问是否允许联网时,也闪动。
现象:正常的情况是弹出一个系统窗口,但是该窗口没有完全遮住屏幕,可以看到j2me应用暂停了,变成了灰色。但是我遇到的问题时,画面不断在我的j2me应用和系统提示窗口之间来回切换闪动,且应用没哟变灰色,还是正常的色彩,提示窗口没有显示出来,只显示出屏幕底部的‘是’和‘否’两个提示按钮。
原因:按键响应的机制有问题。如果直接在按键响应函数中去做逻辑响应——keyPressed()和keyReleased()函数,就会出现这样的问题,如果在这两个函数里只是保存着按键的值,而在线程的run()函数的while循环中去做逻辑处理的话,则能避免改问题(我做的是一个游戏,一般来说游戏都是起一个线程,在run()函数中是否一个while(true)的无限循环不断重画屏幕来实现游戏的运行)。还是对比一下代码:
有问题代码:
无问题代码:
对比代码可以发现,后者保证了逻辑处理(gamelogic())在画图之前处理完,逻辑处理和画图不会相互干扰;而前者直接在keyPressed()中处理,则很可能会打断画图的过程——即在画图还未完成的时候,弹出了系统提示框,弹出之后,又要进行剩余的画图过程从而导致了闪屏——似乎也可以这样总结:系统的画图线程和应用的画图线程相互穿插了,导致了闪屏。避免穿插的办法就是在系统画图线程启动的根源处做处理——即按键处理的地方,将逻辑处理和画图过程完全分开。
LG KG90n是中国移动游戏基地手机系列中的一款,240x320分辨率的屏幕,不支持蓝牙,下载jar的时候只能使用OTA (Over The Air)下载且下载速度极慢,一般需要五六分钟。不过总体来说性能还可以。做j2me应用时,jar包可以达到600k以上,内存也还算充裕。但是有手机的jvm不是特别完善,开发时如果不注意会出现一些难缠的问题。
以下就是我遇到过的2个问题,试验了多遍得出的结果。
1,屏幕闪动问题
现象:进入游戏后,屏幕总是会闪动,但其实游戏还算流畅。
问题出在屏幕刷新,该手机不允许一帧内对屏幕进行两次刷新。何谓两次刷新?对比一下代码比较好理解一点。
问题代码:
public void paint(Graphics g){ g.setColor(-1); g.fillRect(0, 0, SCR_W, SCR_H); Graphics gBuf = imgBuf.getGraphics(); //imgBuf is an Image of screen size as the screen buffer game.draw(gBuf); g.draw(imgBuf, 0, 0, 0); }
修改后无问题的代码:
public void paint(Graphics g){ Graphics gg = g; if(imgBuf != null)//imgBuf is an Image of screen size as the screen buffer gg = imgBuf.getGraphics(); gg.setColor(-1); gg.fillRect(0, 0, SCR_W, SCR_H); game.draw(gg); if(imgBuf != null) g.draw(imgBuf, 0, 0, 0); }
对比代码可以发现,看问题代码,可以知道前面说的‘两次’是:一次是直接网手机屏幕上画东西,一次是在buffer上画东西,然后再画到屏幕上。而无问题代码的做法是:在画图之前,先看是否有buffer,如果有buffer则把所有东西都画到buffer上,然后再一次性画到手机屏幕上,如果没有buffer,则把所有内容直接画到手机屏幕上——这样就不会出现闪动的问题了。
2,在联网时弹出系统提示窗口问是否允许联网时,也闪动。
现象:正常的情况是弹出一个系统窗口,但是该窗口没有完全遮住屏幕,可以看到j2me应用暂停了,变成了灰色。但是我遇到的问题时,画面不断在我的j2me应用和系统提示窗口之间来回切换闪动,且应用没哟变灰色,还是正常的色彩,提示窗口没有显示出来,只显示出屏幕底部的‘是’和‘否’两个提示按钮。
原因:按键响应的机制有问题。如果直接在按键响应函数中去做逻辑响应——keyPressed()和keyReleased()函数,就会出现这样的问题,如果在这两个函数里只是保存着按键的值,而在线程的run()函数的while循环中去做逻辑处理的话,则能避免改问题(我做的是一个游戏,一般来说游戏都是起一个线程,在run()函数中是否一个while(true)的无限循环不断重画屏幕来实现游戏的运行)。还是对比一下代码:
有问题代码:
public void run(){ while(true){ repaint(); serviceRepaints(); } } public void keyPressed(int keycode){ if(keycode == NUM_0){ midlet.platformRequest(url); //此处会出现系统联网提示 } }
无问题代码:
public void run(){ while(true){ gamelogic(); repaint(); serviceRepaints(); if(keyHold != INVALID_KEY) keyHold = INVALID_KEY; } } int keyHold; void gamelogic(){ if(keyHold == NUM_0) midlet.platformRequest(url); } public void keyPressed(int keycode){ keyHold = keycode; }
对比代码可以发现,后者保证了逻辑处理(gamelogic())在画图之前处理完,逻辑处理和画图不会相互干扰;而前者直接在keyPressed()中处理,则很可能会打断画图的过程——即在画图还未完成的时候,弹出了系统提示框,弹出之后,又要进行剩余的画图过程从而导致了闪屏——似乎也可以这样总结:系统的画图线程和应用的画图线程相互穿插了,导致了闪屏。避免穿插的办法就是在系统画图线程启动的根源处做处理——即按键处理的地方,将逻辑处理和画图过程完全分开。
[2] 手机不需要无路线由利用WIFI连接到电脑,简单可行
来源: 互联网 发布时间: 2014-02-18
手机不需要无线路由利用WIFI连接到电脑,简单可行
转自:http://bbs.gfan.com/viewthread.php?tid=422121&extra=&page=1
首先在电脑端的设置和蛋疼哥的差不多的,只是在W7下更简单些,
先说W7下的
1.进入“控制面板\网络和共享中心”在网络信息下面有个“设置新的连接或网络”点击进去后
2.在新的窗口中选择“设置无线临时(计算机到计算机)网络”按提示一步步进行,记得“保存这个网络”前打上勾免得以后麻烦!这里可以选择加密方式,自由选择啦!设置好了就可以退出了,然后连接刚设置好的这个无线临时网络,现在转到 本地连接 打开本地连接属性 却换到共享标签 如图确定退出。这样电脑端就设置好了。
3.然后在无线网卡属性里面配IP, IP配置成192.168.XXX.1 XXX是多少你自己选择,子网掩码自动!保存退出,不管提示什么,只管保存就是了。好了,电脑端设置好了
4.现在是手机端设置,打开无线开关手机会搜到刚刚弄好的那个临时无线网络,连接并编辑 在IP地址那选择使用静态IP地址(这是最关键的,因为自动获取有时候会连不上!)
IP地址设置成192.168.xxx.y(其中XXX是你在电脑端设置的那个数一致,y只要是比1大比253小的数字都可以。 比如我的电脑端是设置192.168.137.1 我手机端就是192.168.137.11)子网掩码:255.255.255.0 网关:192.168.xxx.1(和电脑上的无线网卡的IP地址一致)DNS域名解析:192.168.xxx.1和202.98.192.67(这是电信的域名解析之所以要两个是因为我在电脑上连只用192.168.xxx.1就可以上网,手机上好像不行)保存退出就可以上网啦。
XP系统下的设置方法:
XP系统下共享方法
前提:请务必先确认Wireless Zero Configuration 服务已启动
好了现在可以开始了:
1.打开无线网卡“属性 ”切换到“无线网卡配置”然后在下面点击“添加,然后在打开的窗口中的“网络名(SSID)”后面键入你想要的名字,勾选“即使此网络未广播,也进行连接”下面“无线网络密匙”配置,“网络身份验证、数据加密、网络密匙、确认网络密匙”这几项增加选择(我是选择开放式,加密用WEP),注意“自动为我提供此密匙”前不要打勾才可以进行以上配置,在最下面勾选“这是一个计算机到计算机的(临时)网络,未使用无线访问点(C)”还有在“无线网络配置”选项卡下面有个高级,打开后在那个“要访问的网络”窗口下选择第一项(也就是 任何可用的网络 一项)。
2.无线网卡的IP配置和W7系统下的配置是一样的,可以参照上面的
3.现在是本地连接要共享,这个个W7下的也是差不多的。
4.现在查看可用的无线网络里面是不是多了个你刚刚设置好的临时网络了,连接这个网络,最好重新输入一下密码,此时会一直等待网络,要等到你在手机上连接这个网络才会连接好。
5.手机上的设置就看上面的吧,一样的!
转自:http://bbs.gfan.com/viewthread.php?tid=422121&extra=&page=1
首先在电脑端的设置和蛋疼哥的差不多的,只是在W7下更简单些,
先说W7下的
1.进入“控制面板\网络和共享中心”在网络信息下面有个“设置新的连接或网络”点击进去后
2.在新的窗口中选择“设置无线临时(计算机到计算机)网络”按提示一步步进行,记得“保存这个网络”前打上勾免得以后麻烦!这里可以选择加密方式,自由选择啦!设置好了就可以退出了,然后连接刚设置好的这个无线临时网络,现在转到 本地连接 打开本地连接属性 却换到共享标签 如图确定退出。这样电脑端就设置好了。
3.然后在无线网卡属性里面配IP, IP配置成192.168.XXX.1 XXX是多少你自己选择,子网掩码自动!保存退出,不管提示什么,只管保存就是了。好了,电脑端设置好了
4.现在是手机端设置,打开无线开关手机会搜到刚刚弄好的那个临时无线网络,连接并编辑 在IP地址那选择使用静态IP地址(这是最关键的,因为自动获取有时候会连不上!)
IP地址设置成192.168.xxx.y(其中XXX是你在电脑端设置的那个数一致,y只要是比1大比253小的数字都可以。 比如我的电脑端是设置192.168.137.1 我手机端就是192.168.137.11)子网掩码:255.255.255.0 网关:192.168.xxx.1(和电脑上的无线网卡的IP地址一致)DNS域名解析:192.168.xxx.1和202.98.192.67(这是电信的域名解析之所以要两个是因为我在电脑上连只用192.168.xxx.1就可以上网,手机上好像不行)保存退出就可以上网啦。
XP系统下的设置方法:
XP系统下共享方法
前提:请务必先确认Wireless Zero Configuration 服务已启动
好了现在可以开始了:
1.打开无线网卡“属性 ”切换到“无线网卡配置”然后在下面点击“添加,然后在打开的窗口中的“网络名(SSID)”后面键入你想要的名字,勾选“即使此网络未广播,也进行连接”下面“无线网络密匙”配置,“网络身份验证、数据加密、网络密匙、确认网络密匙”这几项增加选择(我是选择开放式,加密用WEP),注意“自动为我提供此密匙”前不要打勾才可以进行以上配置,在最下面勾选“这是一个计算机到计算机的(临时)网络,未使用无线访问点(C)”还有在“无线网络配置”选项卡下面有个高级,打开后在那个“要访问的网络”窗口下选择第一项(也就是 任何可用的网络 一项)。
2.无线网卡的IP配置和W7系统下的配置是一样的,可以参照上面的
3.现在是本地连接要共享,这个个W7下的也是差不多的。
4.现在查看可用的无线网络里面是不是多了个你刚刚设置好的临时网络了,连接这个网络,最好重新输入一下密码,此时会一直等待网络,要等到你在手机上连接这个网络才会连接好。
5.手机上的设置就看上面的吧,一样的!
[3] 手机形式
来源: 互联网 发布时间: 2014-02-18
手机模式
1. 普通启动模式
就是普通电源键开关机,有点废话了,呵呵。。
2. 安全模式(很多人不知道)
大家可能对安全模式不太了解,其实就和电脑上一个道理,安全模式中系统只加载系统基本服务,不会加载任何第三方服
务,所以装坏软件导致无法开机的,就可以通过此模式进入系统,然后删除那个捣鬼的软件,而不用再初始化系统,非常
实用!
具体做法是:开机后,开机画面到屏幕变暗后这一刻,长按导航中间的确认键,直至手机长振动一下后,松开按键,稍等
即可进入安全模式,进入后屏幕左下角有安全模式四个字,退出安全模式重启手机即可!!!
3. 工程模式
工程模式即调试模式,可通过此模式查看手机信息,包括屏幕型号,摄像头型号等,很详细,也可以在此模式下切换手机
2G或3G,但劝大家不要乱调,不然要进客服的!
进入该模式的方法是:在拨号面板上,按*#*#2846579#*#*即可进入工程模式!
4. 硬刷机
刷机想必大家都懂的,具体可以看论坛其他帖子,硬刷就是将刷机包放进内存卡的根目录下,然后在手机关机的状态下通
过组合按键实现刷机的过程,
该组合按键是:挂机键(红色)+音量增大键+电源键,同时按下这三个键即可!
5. fastboot
该模式可做工程调试,加载驱动,修改recovery等!
具体操作是:同时按拨号键(绿色)+ 音量减小 + 电源键
6. Recovery模式
该模式下可加载zip驱动,备份和恢复系统,也是很重要常用的模式
具体操作是:按拨号键(绿色)+ 音量增大 + 电源进入recovery模式
1. 普通启动模式
就是普通电源键开关机,有点废话了,呵呵。。
2. 安全模式(很多人不知道)
大家可能对安全模式不太了解,其实就和电脑上一个道理,安全模式中系统只加载系统基本服务,不会加载任何第三方服
务,所以装坏软件导致无法开机的,就可以通过此模式进入系统,然后删除那个捣鬼的软件,而不用再初始化系统,非常
实用!
具体做法是:开机后,开机画面到屏幕变暗后这一刻,长按导航中间的确认键,直至手机长振动一下后,松开按键,稍等
即可进入安全模式,进入后屏幕左下角有安全模式四个字,退出安全模式重启手机即可!!!
3. 工程模式
工程模式即调试模式,可通过此模式查看手机信息,包括屏幕型号,摄像头型号等,很详细,也可以在此模式下切换手机
2G或3G,但劝大家不要乱调,不然要进客服的!
进入该模式的方法是:在拨号面板上,按*#*#2846579#*#*即可进入工程模式!
4. 硬刷机
刷机想必大家都懂的,具体可以看论坛其他帖子,硬刷就是将刷机包放进内存卡的根目录下,然后在手机关机的状态下通
过组合按键实现刷机的过程,
该组合按键是:挂机键(红色)+音量增大键+电源键,同时按下这三个键即可!
5. fastboot
该模式可做工程调试,加载驱动,修改recovery等!
具体操作是:同时按拨号键(绿色)+ 音量减小 + 电源键
6. Recovery模式
该模式下可加载zip驱动,备份和恢复系统,也是很重要常用的模式
具体操作是:按拨号键(绿色)+ 音量增大 + 电源进入recovery模式
最新技术文章: