- 浏览: 335838 次
- 性别:
- 来自: 安徽
文章分类
最新评论
-
secally:
楼主可以上传个例子吗,谢谢,我咋跑不起来,,eclipse不是 ...
Android自动打包、签名、优化、上传ANT脚本 -
secally:
请问下执行命令是啥,ant release 还是?麻烦指教谢谢 ...
Android自动打包、签名、优化、上传ANT脚本 -
trp1022:
好牛啊
程序员不能不通文史 -
sunny78117:
谢谢,写得好
Android bitmap优化 -
futurebp:
这是什么类型的脚本啊?
Android自动打包、签名、优化、上传ANT脚本
开发工具: 1. EC 2. SDK 1.1 3. ADT 0.8
原理:通过下载文件的大小,和当前读取的字节数,在固定的时间中检测速度,详细请看代码, 我这里使用可一张图片做的测试:http://www.straitstimes.com/STI/STIMEDIA/image/20090324/BUSKING.jpg
NetWorkSpeedInfo.java Android NetWork info
package cc.androidos.speed; /** * A class for android network info * @author Wang Baoxi * @version 1.0 * @since 2009-5-27 */ public class NetWorkSpeedInfo { /**Network speed*/ public long speed = 0; /**Had finished bytes*/ public long hadFinishedBytes = 0; /**Total bytes of a file, default is 1024 bytes,1K*/ public long totalBytes = 1024; /**The net work type, 3G or GSM and so on*/ public int networkType = 0; /**Down load the file percent 0----100*/ public int downloadPercent = 0; }
SpeedActivity.java Activity
package cc.androidos.speed; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView; /** * * @author Wang Baoxi * @version 1.0 * @since 2009-5-27 */ public class SpeedActivity extends Activity { /** Called when the activity is first created. */ TextView fileLength = null; TextView speed = null; TextView hasDown = null; TextView percent = null; String url = ""; ImageView imageView = null; byte[] imageData = null; NetWorkSpeedInfo netWorkSpeedInfo = null; private final int UPDATE_SPEED = 1; @Override public void onCreate( Bundle savedInstanceState ) { super.onCreate( savedInstanceState ); setContentView( R.layout.main ); hasDown = ( TextView ) findViewById( R.id.hasDown ); fileLength = ( TextView ) findViewById( R.id.fileLength ); speed = ( TextView ) findViewById( R.id.speed ); percent = ( TextView ) findViewById( R.id.percent ); imageView = ( ImageView ) findViewById( R.id.ImageView01 ); Button b = ( Button ) findViewById( R.id.Button01 ); url = getString( R.string.image_url ); netWorkSpeedInfo = new NetWorkSpeedInfo(); b.setOnClickListener( new View.OnClickListener() { @Override public void onClick( View arg0 ) { //down load the file thread new Thread() { @Override public void run() { imageData = ReadFile.getFileFromUrl( url, netWorkSpeedInfo ); stop(); } }.start(); //get the speed , down load bytes ,update the view thread new Thread() { @Override public void run() { while ( netWorkSpeedInfo.hadFinishedBytes < netWorkSpeedInfo.totalBytes ) { netWorkSpeedInfo.downloadPercent = ( int ) (( ( double ) netWorkSpeedInfo.hadFinishedBytes / ( double ) netWorkSpeedInfo.totalBytes ) * 100); try { sleep( 1500 ); } catch ( InterruptedException e ) { e.printStackTrace(); } Log.e( "update,send the message to update", "" ); //update view handler.sendEmptyMessage( UPDATE_SPEED ); } //finished if( netWorkSpeedInfo.hadFinishedBytes == netWorkSpeedInfo.totalBytes ) { netWorkSpeedInfo.downloadPercent = ( int ) (( ( double ) netWorkSpeedInfo.hadFinishedBytes / ( double ) netWorkSpeedInfo.totalBytes ) * 100); handler.sendEmptyMessage( UPDATE_SPEED ); Log.e( "update", ",send the message to update and stop" ); stop(); } } }.start(); } } ); } /** * Handler for post message into OS */ private Handler handler = new Handler() { @Override public void handleMessage( Message msg ) { int value = msg.what; switch ( value ) { case UPDATE_SPEED: updateView(); break; default: break; } } }; /** * Update the view method */ private void updateView() { speed.setText( netWorkSpeedInfo.speed + "bytes/s" ); hasDown.setText( netWorkSpeedInfo.hadFinishedBytes + "bytes" ); fileLength.setText( netWorkSpeedInfo.totalBytes + "" ); percent.setText( netWorkSpeedInfo.downloadPercent+"%" ); if( imageData != null ) { Bitmap b = BitmapFactory.decodeByteArray( imageData, 0, imageData.length ); imageView.setImageBitmap( b ); } } }
ReadFile.java Read file from web
package cc.androidos.speed; import java.io.InputStream; import java.net.URL; import java.net.URLConnection; import android.util.Log; /** * * @author Wang Baoxi * @version 1.0 * @since 2009-5-27 */ public class ReadFile { /** * <p> * Read file from web * </p> * @param url * @param netWorkSpeedInfo * @return */ public static byte[] getFileFromUrl( String url,NetWorkSpeedInfo netWorkSpeedInfo ) { int currentByte = 0; int fileLength = 0; long startTime = 0; long intervalTime = 0; byte[] b = null; int bytecount = 0; URL urlx = null; URLConnection con = null; InputStream stream = null; try { Log.d( "URL:", url ); urlx = new URL( url ); con = urlx.openConnection(); con.setConnectTimeout( 20000 ); con.setReadTimeout( 20000 ); fileLength = con.getContentLength(); stream = con.getInputStream(); netWorkSpeedInfo.totalBytes = fileLength; b = new byte[fileLength]; startTime = System.currentTimeMillis(); while ( ( currentByte = stream.read() ) != -1 ) { netWorkSpeedInfo.hadFinishedBytes++; intervalTime = System.currentTimeMillis() - startTime; if(intervalTime==0){ netWorkSpeedInfo.speed = 1000; }else{ netWorkSpeedInfo.speed = ( netWorkSpeedInfo.hadFinishedBytes / intervalTime ) * 1000; } if(bytecount<fileLength){ b[bytecount++] = ( byte ) currentByte; } } } catch ( Exception e ) { Log.e( "exception : ", e.getMessage()+"" ); } finally { try { if( stream != null ) { stream.close(); } } catch ( Exception e ) { Log.e( "exception : ", e.getMessage() ); } } return b; } }
以上内容Sinfransis版权所有,专注请注明来自 http://mdev.cc/dev
发表评论
-
抓取Android WebView截屏
2011-08-19 21:33 7605一般使用setDrawingCacheEnabled(true ... -
Android bitmap优化
2011-08-11 17:02 5899直接使用ImageView显示 ... -
Android模拟器更改分辨率后 无法取得分辨率问题
2011-05-11 21:06 2811在PC上更改模拟器分辨率为480*800 (如果你的PC界面 ... -
获取屏幕硬件分辨率方法 收藏
2011-05-11 16:28 1886TextView tv=(TextVie ... -
Bytecode for the Dalvik VM
2011-05-10 22:35 1324http://www.netmite.com/android/ ... -
Android DEX反编译后部分代码解析
2011-05-10 22:07 3879一个private 方法 private Stri ... -
反编译并且修改Android APK包
2011-05-10 16:57 3070為了某個實驗的動機,我們評估反編譯 Android ... -
Android Ant编译时候进行混淆
2010-10-18 13:49 3809版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
自定义Ant Task
2010-09-13 17:58 2969版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自动打包、签名、优化、上传ANT脚本
2010-07-26 16:51 13940版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自定义含有CheckBox的Adapter遇到的问题
2010-06-23 13:48 4092版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
QR code类库
2010-06-03 23:11 2295Google code发现的好东西。 QR code 类库 ... -
Android QQ,一个WEBOS APP诞生!!(两个QQ对比!)
2010-04-10 12:05 1851请看这个大哥的言论 http://linuxtoy.or ... -
Android 、BlackBerry 文本对齐方式对比
2010-02-22 13:11 1782版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
教你如何开关Android的APN网络
2010-01-08 11:36 5974版权所有,转载请注明来自Mobile Developer (h ... -
史上最强NDK入门项目实战
2009-10-10 13:29 2667以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
使用TimerTask控制ProgressBar
2009-10-10 13:21 1052以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
自定义List布局
2009-10-10 13:19 1861以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
重画Progressbar的进度
2009-10-10 13:15 1915以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
谈谈Android中文短信的实现
2009-10-10 13:13 2147似 乎Google在推出G1时 ...
相关推荐
无处不在的强悍网络速度测试工具 for Android
最小的依赖工具类用于在终端测试你的网络下载速度
一款好用的网络连接和速度测试应用 for Android
罗列了android常用两种检测网络方法,在工作线程中定时执行检测操作
Android开发的测试网络连接质量的工具源码,分上传文件速度测试、下载文件速度测试和ping测试,有直观的界面查看测试过程,测试结果保存到文件。使用到了apache的HttpClient,和对ping命令的简单应用。
Android下测试tcp带宽的iperf工具,亲测Android5/7/8/9/10可用。 步骤:1、修改电脑ip和Android设备网口ip在同一网段; 2、Android端:导入到/mnt路径下,修改权限,执行:./iperf -c 172.16.186.39 -i 1 -w 1m -t ...
Android 获取当前网速质量调整网络请求
最佳手机网速测试工具,首款支持5G测速的应用,全球排名第一的网络速度测试网站Speedtest.net安卓客户端,支持查看Ping值、下载速度、上传速度,实时图表显示测试结果,排除故障以分析真实网速,跟踪过往网络测试...
网速测试,迅速测试网络连接速度和网络连接质量。
� 采用了对有限内存、电池和 CPU 优化过的虚拟机 Dalvik , Android 的运行速度比想象的要快很多。 � 运营商(中国移动等)的大力支持,产业链条的热捧。 � 良好的盈利模式( 3/7 开),产业链条的各方:运营商、...
通过对3G手机常用的android系统的研究,测试了这种平台的大部分功能,android系统的开放性特点、良好的第三方程序开发环境和高效的可扩展性功能也方便了在android平台上才各种应用的开发。Android是一种新的系统,不...
Android传感器测试,包括加速度、方向等数据,保存到数据库,可导出到Excel以便分析研究 软件开发设计:PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与...
比较靠谱的Android网络测试APK,简单方便,实测与实际速度一致,相比其他APK,这个需要下载时间久一点
传统的图像识别对机器的性能要求较高,运行时间较长。传统的旅游景点图像识别准确率严重依赖于耗时费力的人工特征设计。...得出我们所需要的模型,移植到android平台上,经测试准确率较高,运行时间快速.
如何解决Android网络通信中的乱码问题? 在Android中如何使用语音服务和Google Map Apl? Android如何访问摄象头、传感器等硬件的APl? 如何时行Widget开发?如何用各种Android组件来打造漂亮的UI界面? ...
android的启动速度、虚拟机heapsize的大小调整、watchdog工作原理等问题;第5章讲解了android系统中常用的类,包括sp、wp、refbase、thread等类,同步类,以及java中的handler类和 looper类,掌握这些类的知识后方...
③ 下载 Android SDK 解压-> path 里加入 SDK 包中的 tools 目录全路径 ④ 下载 ADT 0.8.0 解压 ⑤ 打开 Eclipse 安装 ADT 插件 Android Android Android Android 的系统架构 系统构架 6 支持的功能 + Application ...
运行互联网速度测试、WiFi速度测试、下载速度和上传速度分析和延迟 获取 IP 地址、MAC地址、设备名称、型号、供应商和制造商的最准确设备识别 NetBIOS、UPnP、SNMP 和 Bonjour 名称,属性和设备类型的高级设备分析 ...
iperf3是一个网络速度测试工具,测试内网实际带宽 可用于wifi 有限等网络,里面有windows 64位服务器和Android APK 测试APP。