随笔分类 - Android知识点总结
Android网络编程(二)HttpClient
摘要:1 //HttpGet 请求包 2 HttpGet httpGet = new HttpGet(sbUrl.tostring) 3 //获取请求行对象 4 RequestLine requestLine = httpGet.getRequestLine(); 5 System.out.println("RequestLine:" + requestLine.toString()); 6 7 HttpClient httpClient = new DefaultHttpClient();//构造一个默认的 HttpClient 客户端对象 8 HttpResponse htt
阅读全文
Android网络编程(一)
摘要:网络通信层次图TCP报文段格式建链过程中的“三次握手”1、SYN(Synchronize Sequence Numbers)是TCP是传输控制协议中的一个标志位。如果该位被置为1,则表示这个报文是一个请求建立连接的报文。 2、ACK(ACKnowledge Character)中文:确认字符。也是TCP是传输控制协议的一个标志位。在数据通信传输中,接收站发给发送站的一种传输控制字符。它表示确认发来的数据已经接受无误。是一个用于确认的报文。关闭链路的四次握手1、FIN(finish) 结束,没有更多的数据发送Http请求协议GET /img/iknow/msg/msg.gif HTTP/1.1A
阅读全文
UI同步技术(2)
摘要:一、为什么要使用 AsyncTask 1、平时我们在开发Android程序时遇到较耗时任务的处理,如I/O访问的数据库操作、网络访问等情况时造成UI假死等问题,通过 AsyncTask可以很好的解决这个问题。二、解决上面第一点的问题有以下方法: 1、方法一:创建一个新的线程执行我们的任务,使用Thread类,在 run(){}中写入任务代码,比如: new Thread(new Runnable() { public void run() { Downloader.downloadFile(url); } }).start(); 但使用Thread会产生一些意想不到的问题,需要程...
阅读全文
UI同步技术(1)
摘要:Handler消息处理类Handler()或Handler(Looper)sendMessage(Message) 给消息队列发送消息obtainMessage()从消息队列中获取消息post(Runnable)消息提交给线程处理handleMessage在消息循环中,被调用的消息处理函数1、Handler: 消息的处理者,handler负责将需要传递的信息封装成Message,通过调用handler对象的obtainMessage()来实现;将消息传递给Looper,这是通过handler对象的sendMessage()来实现的。继而由Looper将Message放入MessageQueu.
阅读全文
SQlite的数据库查询
摘要:多表查询 + 数据字典查询数据字典1 select b.codedesc,a.[branum],d.codedesc,c.codedesc 2 from BI_VEHICLE a 3 join T_PF_DATADICT b on b.fieldname = 'BRAPREFIX' and a.braprefix = b.code 4 join T_PF_DATADICT c on c.fieldname = 'VECTYPE' and a.vectype = c.code 5 join T_PF_DATADICT d on d.fieldname = '
阅读全文
BroadcastReceiver 广播机制
摘要:实现一个BroadcastReceiverpublic class MyAndroidReceiver extends BroadcastReceiveroverride onReceive(Context context, Intents Intents) 注册BroadcastReceiver在AndroidManifest.xml文件当中进行注册<receiver Android:name=“MyAndroidReceiver"> <Intents-filter> <action Android:name=”com.great.action.NEW
阅读全文
Server服务
摘要:一、Started服务与Bound服务的最重要的区别: 1、Bound服务:要依赖底层(也就是Linux的通讯机制) 2、Bound服务:有客户端和服务器的概念 3、Bound服务:只要有一个绑定者存在,那么服务继续运行,只有在所有绑定者都退出,服务才停止<service android:enabled=“true” android:name=“.PlayService”/>服务按启动方式分为两类Started:适用于 Activity 与服务之间没有调用交互的情况 用startService()来启动(每调用一次这个方法,就会启动一个服务进程) 一旦启动,就运行在后台,即使启动它
阅读全文
onSaveinstancestate 保存和恢复activity的状态数据
摘要:一般来说, 调用onPause()和onStop()方法后的activity实例仍然存在于内存中, activity的所有信息和状态数据不会消失, 当activity重新回到前台之后, 所有的改变都会得到保留.但是当系统内存不足时, 调用onPause()和onStop()方法后的activity可能会被系统摧毁, 此时内存中就不会存有该activity的实例对象了. 如果之后这个activity重新回到前台, 之前所作的改变就会消失. 为了避免此种情况的发生, 开发者可以覆写onSaveInstanceState()方法. onSaveInstanceState()方法接受一个Bundle类
阅读全文
Activity任务堆栈 四种launchMode
摘要:1 /** 2 * 演示一:FLAG_ACTIVITY_NEW_TASK 3 * 当传递给startActivity()的Intent对象包含 FLAG_ACTIVITY_NEW_TASK 标记时, 4 * 系统会为需要启动的activity寻找与当前activity不同的task。 5 * 如果要启动的 activity的affinity属性与当前所有的task的affinity属性都不相同, 6 * 系统会新建一...
阅读全文
startActivityForResult
摘要:1 /** 2 * 3 * 函数名称 : registerListener 4 * 功能描述 : 注册监听 5 * 参数及返回值说明: 6 * 7 * 修改记录: 8 * 日期:2011-12-13 上午10:14:03 修改人:gy 9 * 描述 :10 *11 */12 private void registerListener()13 {14 btnStartActivityForResult.setOnClic...
阅读全文
PendingIntent 结合Notification的使用
摘要:是封装了一个 Intent 以及 Intent 接收者的描述对象,它是一种延迟执行的 Intent, 该 PendingIntent 不会立即被处理,而是交付给其他应用程序,等待一个事件的触发后被送出PendingIntent 的构造getActivity(Context context, int reqCode, Intent, int flag)getBroadcast(Context context, int reqCode, Intent, int flag)getService(Context context, int reqCode, Intent, int flag)Pendin
阅读全文
自定义 Permmision 权限
摘要:Activity 注册属性中 android:permission 为 Activity 加了一个权限,只有拥有这个权限的应用程序才能够调用到这个 Activity注册权限:<permission android:name="com.great.activity_intent.mypermission1" android:protectionLevel="normal" />权限级别:normal (普通级别):默认值,只要申请,就可以使用dangerous(危险级别):会给程序一个提示或警告signature(签名级别):只有拥有相同的签名
阅读全文
Activity详解 Intent显式跳转和隐式跳转
摘要:Activity 生命周期显式 Intent 调用 1 //创建一个显式的 Intent 对象(方法一:在构造函数中指定) 2 Intent intent = new Intent(Intent_Demo1.this, Intent_Demo1_Result1.class); 3 4 Bundle bundle = new Bundle(); 5 bundle.putString("id", strID); 6 intent.putExtras(bundle); 7 8 intent.putExtra("name...
阅读全文
菜单和上下文菜单的创建
摘要:菜单对象复写Activity的方法 1 /** 2 * 函数名称 : onCreateOptionsMenu 3 * 功能描述 : 创建选项菜单 4 * 参数说明: 5 * @param menu 6 * @return 7 * 返回值: 8 * 9 * 修改记录:10 * 日期:2011-11-25 上午11:27:33 修改人:gy11 * 描述 :12 * 13 */14...
阅读全文
UI布局 4种布局方法
摘要:布局产生器LayoutInflater获取布局产生器的方法context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)LayoutInflater.from(Context)1 //获取布局产生器(方法一),通过 getSystemService 方法返回系统级的处理程序实例2 LayoutInflater inflater = = this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);3 4 //获取布局产生器(方法二)5 LayoutInflater inflater = ...
阅读全文
浙公网安备 33010602011771号