随笔分类 -  android

摘要:Android应用经常会和服务器端交互,这就需要手机客户端发送网络请求,下面介绍四种常用网络请求方式,我这边是通过Android单元测试来完成这四种方法的,还不清楚Android的单元测试的同学们请看Android开发技巧总结中的Android单元测试的步骤一文。java.net包中的HttpURLConnection类Get方式:[java] view plaincopyprint?//Get方式请求 publicstaticvoidrequestByGet()throwsException{Stringpath="https://reg.163.com/logins.jsp?id 阅读全文
posted @ 2013-04-03 10:47 ggzjj 阅读(339) 评论(0) 推荐(0)
摘要:// 编码参数 List<NameValuePair> formparams = new ArrayList<NameValuePair>(); // 请求参数 for (NameValuePair p : params) { formparams.add(p); } UrlEncodedFormEntity entity = new UrlEncodedFormEntity(formparams,HTTP.UTF_8); // 创建POST请求 HttpPost request = new HttpPost(url); request.setEntity(entity 阅读全文
posted @ 2013-04-03 09:17 ggzjj 阅读(9868) 评论(0) 推荐(0)
摘要:HTTP协议与状态保持HTTP协议本身是无状态的,这与HTTP协议本来的目的是相符的,客户端只需要简单的向服务器请求下载某些文件,无论是客户端还是服务器都没有必要纪录彼此过去的行为,每一次请求之间都是独立的,好比一个顾客和一个自动售货机或者一个普通的(非会员制)大卖场之间的关系一样。 然而聪明(或者贪心?)的人们很快发现如果能够提供一些按需生成的动态信息会使web变得更加有用,就像给有线电视加上点播功能一样。这种需求一方面迫使HTML逐步添加了表单、脚本、DOM等客户端行为,另一方面在服务器端则出现了CGI规范以响应客户端的动态请求,作为传输载体的HTTP协议也添加了文件上载、cookie这. 阅读全文
posted @ 2013-01-22 11:57 ggzjj 阅读(2891) 评论(0) 推荐(0)
摘要:首先说下listview的优化方案,这也是面试中常考的题目。优化方案有三种:1,如果自定义适配器,那么在getView方法中判断contentView是否为空,如果为空创建contentView并返回,如果不为空直接返回contentView。这样能尽可能少创建view。2.给contentView设置tag,传入一个viewHoder对象,用于缓存要实现的数据。3,如果listview中显示的item太多,就要考虑分页加载了。 下面就注意介绍一下分页加载数据。首先在layout下创建listview.xml:[html]view plaincopy<?xmlversion=" 阅读全文
posted @ 2013-01-14 10:56 ggzjj 阅读(289) 评论(0) 推荐(0)
摘要:在android中应用相机功能,一般有两种:一种是直接调用系统相机,一种自己写的相机。我将分别演示两种方式的使用:第一种:是使用Intent跳转到系统相机,action为:android.media.action.STILL_IMAGE_CAMERA关键代码:Java代码 Intentintent=newIntent();//调用照相机intent.setAction("android.media.action.STILL_IMAGE_CAMERA");startActivity(intent);例子:CameraTest_2.javaJava代码 importandroi 阅读全文
posted @ 2013-01-13 23:45 ggzjj 阅读(304) 评论(0) 推荐(0)
摘要:压缩图片搞的我唠嗑疼,有的从网上找的压根不能用。。。下面看看我整理的吧:点击头像的时候开始调用camera()方法 1 private byte[] mContent = new byte[1024];// 保存照片转换后的字节,用与上传到服务器 2 private Bitmap myBitmap; 3 private static final int REQUEST_CAMERA = 1; 4 private static final int REQUEST_CALENDAR = 2; 5 6 7 8 public void camera() { 9 final CharS... 阅读全文
posted @ 2013-01-13 22:24 ggzjj 阅读(2535) 评论(0) 推荐(0)
摘要:方法如下:1.以管理员身份运行命令提示符: 快捷键win+R→输入cmd→回车2.启用并设定虚拟WiFi网卡: 运行命令: netsh wlan set hostednetwork mode=allow ssid=meizuPC key=bulukaWiFi注意:下面参数可以自由变换 mode:是否启用虚拟WiFi网卡,改为disallow则为禁用。 ssid:无线网名称,最好用英文(以meizuPC为例)。 key:无线网密码,八个以上字符(以bulukaWiFi为例)。以上三个参数可以单独使用,例如只使用mode=disallow可以直接禁用虚拟Wifi网卡。开启成功后,网络连接中会多出一 阅读全文
posted @ 2013-01-13 19:15 ggzjj 阅读(286) 评论(0) 推荐(0)
摘要:需求: 1.一个android端的service后台运行的程序,作为socket的服务器端;用于接收Pc client端发来的命令,来处理数据后,把结果发给PC client 2.PC端程序,作为socket的客户端,用于给android手机端发操作命令难点分析: 1.手机一定要有adb模式,即插上USB线时马上提示的对话框选adb。好多对手机的操作都可以用adb直接作。 不过,我发现LG GW880就没有,要去下载个 2.android默认手机端的IP为“127.0.0.1” 3.要想联通PC与android手机的sokcet,一定要用adb forward 来作下端口转发才能连上socke 阅读全文
posted @ 2013-01-13 19:02 ggzjj 阅读(2888) 评论(13) 推荐(0)
摘要:在最近写的一个Android中需要请求web服务器中的数据,有一个登录Activity,登录后会到MainActivity,这中间登录和MainActivity都需要请求php的jsonapi,所以要在网络请求中保持session的,研究了好半天才搞定。其实sesion在浏览器和web服务器直接是通过一个叫做name为sessionid的cookie来传递的,所以只要在每次数据请求时保持sessionid是同一个不变就可以用到web的session了,做法是第一次数据请求时就获取sessionid的值并保存在一个静态变量中,然后在第二次请求数据的时候要将这个sessionid一并放在Cooki 阅读全文
posted @ 2013-01-13 17:39 ggzjj 阅读(560) 评论(0) 推荐(0)
摘要:今天做的一个是要登录自己的图书馆账号,用于查看自己所借阅的书籍,看了一下图书馆的代码,发现是POST用户名和密码,而在代码实现主要有两个难点:一、保存账号密码 二、保存Cookie那么 ,第一个可以使用之前提到过的Sharedpreference ,每次就直接从sharedpreference里获取账号名和密码就可以了,不需要每次都输入第二个怎么获得服务器的cookie呢,知道这次的session id通过Httpclient 中的getcookiestore1 List<Cookie> cookies = httpclient.getCookieStore().getCookie 阅读全文
posted @ 2013-01-13 17:27 ggzjj 阅读(405) 评论(0) 推荐(0)
摘要:在介绍切换动画效果前,先介绍下将使用到的Android SDK提供的工具类。AlphaAnimation:控制动画对象的透明度,淡入淡出效果实现。TranslateAnimation:控制动画对象的位置,实现对象位置的移动动画。Animation:动画抽象类。AnimationUtils:提供了动画的一些常用方法。通过XML方式定义动画的形式。更多的动画说明文档请看:http://android.toolib.net/guide/topics/resources/animation-resource.html一、淡入淡出方式切换1、建立Activity淡入动画的XML描述enter_alpha 阅读全文
posted @ 2013-01-12 15:07 ggzjj 阅读(296) 评论(0) 推荐(0)
摘要:Android提供了三种通知类型方式:ToastNotifications、Status Bar Notification、Dialog Notification现在分别来看看它们适用的场景与使用方法。一、ToastNotifications以背景改变方式,提示一些简短的消息,消息窗口自动淡入淡出,不接受交互事件。例如:当下载某个文件完成时,可以提示简短的“保存成功”。显示效果:创建弹出提示方法:1、创建Toast对象,可以通过Toast提供的静态方法makeText(Context context, String message, int duration)context:应用上下文对象,这 阅读全文
posted @ 2013-01-12 14:40 ggzjj 阅读(407) 评论(0) 推荐(0)
摘要:很多人在项目中做长时间操作时,比如访问web service后台数据,都想显示一个透明无边框的圆形进度条,如下图: 不幸的是,Android系统自带的ProgressDialog,无论如何设置Theme、style,或者用java代码设置什么属性,边框都是去不掉的,至少我现在还不知道怎么去掉: 怎么办? 其实很简单,自定义一个ProgressDialog,加载自己的layout! 先上layout xml:1 <?xml version="1.0" encoding="UTF-8"?>2 <ProgressBar xmlns:andro 阅读全文
posted @ 2013-01-12 14:20 ggzjj 阅读(596) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/liuhe688/article/details/6955668問渠那得清如許?為有源頭活水來。南宋.朱熹《觀書有感》据说程序员是最爱学习的群体,IT男都知道,这个行业日新月异,必须不断地学习新知识,不断地为自己注入新鲜的血液,才能使自己跟上技术的步伐。今天我们来讲一下Android中BroadcastReceiver的相关知识。BroadcastReceiver也就是“广播接收者”的意思,顾名思义,它就是用来接收来自系统和应用中的广播。在Android系统中,广播体现在方方面面,例如当开机完成后系统会产生一条广播,接收到这条广播就能实现开机启动服务的 阅读全文
posted @ 2013-01-12 02:27 ggzjj 阅读(171) 评论(0) 推荐(0)
摘要:介绍在 Android 中使用 Activity, Service, Broadcast, BroadcastReceiver活动(Activity) - 用于表现功能 服务(Service) - 相当于后台运行的 Activity广播(Broadcast) - 用于发送广播 广播接收器(BroadcastReceiver) - 用于接收广播Intent - 用于连接以上各个组件,并在其间传递消息 1、演示 Activity 的基本用法,⼀个 Activity 启动另⼀个 Activity,启动另⼀个 Activity 时为其传递参数,被启动的 Activity 返回参数给启动者的 Activ 阅读全文
posted @ 2013-01-12 02:19 ggzjj 阅读(190) 评论(0) 推荐(0)
摘要:BroadcastReceiver用于异步接收广播Intent。主要有两大类,用于接收广播的:正常广播Normal broadcasts(用Context.sendBroadcast()发送)是完全异步的。它们都运行在一个未定义的顺序,通常是在同一时间。这样会更有效,但意味着receiver不能包含所要使用的结果或中止的API。 有序广播Ordered broadcasts(用Context.sendOrderedBroadcast()发送)每次被发送到一个receiver。所谓有序,就是每个receiver执行后可以传播到下一个receiver,也可以完全中止传播——不传播给其他receiv 阅读全文
posted @ 2013-01-12 01:55 ggzjj 阅读(244) 评论(0) 推荐(0)
摘要:随着乔布斯的回归,iPad2的发布,看来移动端的开发话题越来越火热了。在此列出一些能够在iOS的最大竞争者——安卓(Android)系统的检测方法。 JavaScript判断方法 搜索user agent字符串中的Android单词是最省事儿的方法:1.if(navigator.userAgent.match(/Android/i)) { 2.// Do something! 3.// Redirect to Android-site? 4. window.location ='http://android.davidwalsh.name'; 5. } PHP判断方法 同样,我 阅读全文
posted @ 2013-01-12 00:30 ggzjj 阅读(164) 评论(0) 推荐(0)
摘要:Android操作系统 Android是一个基于Linux、使用java作为程序接口的操作系统。他提供了一些工具,比如编译器、调试器、还有他自己的仿真器(DVM — Dalvik Virtual Machine)。Android是由google领导的Open Handset Alliance开发的。 Android使用的虚拟机比较特别。Dalvik使用了一些特别的方法。你在Android上不能运行普通的Java程序。Android提供了一个dx的工具,可以把普通的Java类文件转换为dex(Dalvik Executable)文件。Android程序最后通过aapt(Android As... 阅读全文
posted @ 2013-01-11 23:40 ggzjj 阅读(158) 评论(0) 推荐(0)
摘要:一、完成该功能要具备以下知识点得到位图Bitmap的方式我总结了四种方式,不管哪种方式得到的图片相关的位图,都可以用ImageView对象的setImageBitmap(Bitmap bitmap)函数,把与位图相关的图片设置在ImageView中显示出来(1)从sdcard中图片路径去取,本例就是采取这种方式 ,如下面的代码,filename代表图片的路径Bitmap bm = BitmapFactory.decodeFile(fileName);(2)从项目的/res/drawable中去取Bitmap bm = ((BitmapDrawable)getResources().getDra 阅读全文
posted @ 2013-01-11 16:40 ggzjj 阅读(286) 评论(0) 推荐(0)
摘要:1.定义一个BroadcastReceiver[java] view plaincopyprint?publicclassBootReceiverextendsBroadcastReceiver{publicvoidonReceive(Contextctx,Intentintent){Log.d("BootReceiver","systembootcompleted");//startactivity Stringaction="android.intent.action.MAIN";Stringcategory="andr 阅读全文
posted @ 2013-01-11 16:34 ggzjj 阅读(193) 评论(0) 推荐(0)