- 浏览: 341626 次
- 性别:
- 来自: 安徽
文章分类
最新评论
-
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 7669一般使用setDrawingCacheEnabled(true ... -
Android bitmap优化
2011-08-11 17:02 5990直接使用ImageView显示 ... -
Android模拟器更改分辨率后 无法取得分辨率问题
2011-05-11 21:06 2862在PC上更改模拟器分辨率为480*800 (如果你的PC界面 ... -
获取屏幕硬件分辨率方法 收藏
2011-05-11 16:28 1923TextView tv=(TextVie ... -
Bytecode for the Dalvik VM
2011-05-10 22:35 1370http://www.netmite.com/android/ ... -
Android DEX反编译后部分代码解析
2011-05-10 22:07 3947一个private 方法 private Stri ... -
反编译并且修改Android APK包
2011-05-10 16:57 3138為了某個實驗的動機,我們評估反編譯 Android ... -
Android Ant编译时候进行混淆
2010-10-18 13:49 3835版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
自定义Ant Task
2010-09-13 17:58 3001版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自动打包、签名、优化、上传ANT脚本
2010-07-26 16:51 13994版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自定义含有CheckBox的Adapter遇到的问题
2010-06-23 13:48 4130版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
QR code类库
2010-06-03 23:11 2339Google code发现的好东西。 QR code 类库 ... -
Android QQ,一个WEBOS APP诞生!!(两个QQ对比!)
2010-04-10 12:05 1882请看这个大哥的言论 http://linuxtoy.or ... -
Android 、BlackBerry 文本对齐方式对比
2010-02-22 13:11 1816版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
教你如何开关Android的APN网络
2010-01-08 11:36 6063版权所有,转载请注明来自Mobile Developer (h ... -
史上最强NDK入门项目实战
2009-10-10 13:29 2692以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
使用TimerTask控制ProgressBar
2009-10-10 13:21 1131以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
自定义List布局
2009-10-10 13:19 1937以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
重画Progressbar的进度
2009-10-10 13:15 1945以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
谈谈Android中文短信的实现
2009-10-10 13:13 2185似 乎Google在推出G1时 ...
相关推荐
Android系统提供了丰富的API供开发者使用,进行网络速度测试就是其中之一。通常,我们可以通过发送HTTP或HTTPS请求,测量下载数据所用的时间来计算下载速度。这个过程包括初始化连接、发送请求、接收响应以及处理...
在并发下载中,每个下载任务通常会开启一个单独的网络连接,测试过程中需要关注连接建立的速度、数据传输效率以及断线重连机制。 2. **多线程**:为了支持大量并发下载,Android客户端需要使用多线程技术。每个下载...
在Android平台上进行应用程序开发时,测试是...综上所述,"android测试下载"涵盖了从网络请求到文件保存的全过程测试,通过全面的测试策略和工具,可以确保Android应用的下载功能既高效又稳定,为用户提供优质的体验。
标题中的“无处不在的强悍网络速度测试工具 for Android .rar”表明这是一款适用于Android设备的网络速度测试应用,主要用于检测用户的移动数据或Wi-Fi网络的上传、下载速度以及网络延迟。这类工具对于用户了解自己...
在Android系统中,进行网络速度测试通常涉及到使用HttpURLConnection或者OkHttp等网络请求库。这个工具类可能采用了其中的一种或多种技术,通过发送小体积的数据请求,计算一定时间内接收的数据量来估算下载速度。...
iNetwork Speed Test是一款网络速度测试工具,适用于评估手机的上网速度,无论是Wi-Fi还是蜂窝数据。它可以记录测试结果并在地图上显示,帮助用户了解网络状况并优化网络设置。 反应速度测试ReflexTester则是一款...
1. **Android网络API** Android提供了多种API来检测和管理网络连接。`ConnectivityManager`是Android系统服务之一,它负责处理网络连接的生命周期,包括检查网络状态、开启和关闭网络等。我们可以通过`Context....
在Android平台上,网络连接和速度测试是至关重要的任务,尤其对于移动用户而言,了解网络状况有助于优化在线体验。本文将详细介绍“流星「Meteor」v1.18.0-2 for Android”这款应用,它是一款专为Android设计的高效...
- `iperf` 使用 TCP 或 UDP 协议进行通信,可以进行上传和下载速度测试。 - 对于 TCP 测试,`iperf` 通过调整发送窗口大小来找出网络的传输极限。 - UDP 测试则更注重于数据包的发送速率和丢包率,适合实时性要求...
- **硬件测试**:包括屏幕、触摸屏、扬声器、麦克风、电池、摄像头、传感器(如加速度计、陀螺仪、磁力计等)等功能的测试。 - **软件测试**:检查操作系统的基本功能,如网络连接、蓝牙、Wi-Fi、GPS、存储空间、...
SpeedTest 是一个广受欢迎的网络速度测试工具,它能够测量你的设备的上传、下载速度以及网络延迟。用户界面直观易用,只需点击“开始测试”按钮,即可得到实时的网络速度报告。这对于普通用户来说,是检测家庭或移动...
本文将从 Android APP 的流量测试、电量测试、弱网络测试、稳定性测试、安全测试、环境测试等几个方面讲解 Android APP 的专项测试。 Android APP 的流量测试 Android APP 的流量消耗一般是指用户操作引起的流量...
本文将详细介绍一种常用的网络性能测试工具——Netperf,以及如何在Android设备上运用它来评估网络速度和性能。 Netperf是一款强大的开源工具,主要用于测量基于TCP或UDP的网络传输性能。它采用了客户端-服务器模式...
6. 网络测试:验证网络连接性能,包括WiFi、移动数据和蓝牙连接。 7. 用户体验测试:关注操作便捷性、易用性和视觉效果。 四、测试用例编写与执行 1. 测试用例模板:通常包含测试ID、测试目标、前提条件、测试步骤...
标题中的"FR1128-Android仪表盘网速测试源码"暗示这是一个关于Android平台上的应用程序,专门用于网络速度的实时监测和显示。这个应用可能包含了一个自定义的仪表盘视图,能够以图形化的方式展示下载和上传速度,为...
对于网络速度测试,虽然Android系统本身没有内置功能,但可以通过第三方库或者API接口实现。例如,可以使用`Volley`库进行网络请求,通过测量请求响应时间来估算WIFI速度。另外,还可以利用`Socket`编程进行TCP或UDP...
它可以进行TCP和UDP协议的测试,帮助用户了解网络的上传、下载速度以及延迟情况。例如,你可以使用iperf3来确定你的网络连接是否达到ISP承诺的带宽,或者在不同时间点比较网络性能的变化。 对于Android平台,iperf3...
《大话移动APP测试:Android与iOS应用测试指南》是一本深入探讨移动应用测试领域的专著,由资深测试专家陈晔撰写。这本书旨在为开发者、测试工程师以及对移动应用质量控制感兴趣的人士提供全面而实用的测试策略和...
使用"android HTTP接口测试软件",你可以模拟真实的用户请求,检查服务器的响应速度、正确性和一致性。 在使用过程中,你可能会遇到如网络连接错误、超时、无效响应等问题,这时就需要利用工具的调试功能,分析HTTP...
1. **下载过程**:测试下载速度、断点续传功能,以及在网络不稳定情况下的重试机制。 2. **安装过程**:验证安装过程中是否有错误提示,安装完成后是否能正确启动新版本。 3. **数据迁移**:更新前后,应用的数据和...