`
文章列表
每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,这个方法return 一个int值,return 的值有四种:   START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service,由于服务状态为开始状态,所以创建服务后一定会调用onStartCommand(Intent,int,int)方法。如果在此期间没有任何启动命令被传递到service,那么参数Intent将为null。   ...
手机作为一种通讯终端(MMS),伴随着网络的升级而不断的升级换代。1995年1G问世,手机只能进行基本的语音通讯,1996-1997年2G(GSM,CDMA)及其后的GPRS,EDGE等技术的快速发展,手机开始逐渐增加了数据服务功能。2009 ...

http头参数

    博客分类:
  • http
用于HTTP请求中的常用请求头字段Accept:用于高速服务器,客户机支持的数据类型Accept-Charset:用于告诉服务器,客户机采用的编码格式Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式Accept-Language:客户机的语言环境Host:客户机通过这个头高速服务器,想访问的主机名If-Modified-Since:客户机通过这个头告诉服务器,资源的缓存时间Referer:客户机通过这个头告诉服务器,它是从哪个资源来访问服务器的(防盗链)User-Agent:客户机通过这个头告诉服务器,客户机的软件环境Cookie:客户机通过这个头可以向服务器带数据C ...
表单提交中get和post方式的区别有5点1.get是从服务器上获取数据,post是向服务器传送数据。2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3.对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。4.get 传送的数据量较小,不能大于2KB。post传送的数据量较大, ...
现在的主流移动设备像Android、iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上的SQLite开发技巧。对于Android平台来说,系统内置了丰富的API来供开发人员操作SQLite,我们可以轻松的完成对数据的存取。 下面就向大家介绍一下SQLite常用的操作方法,为了方便,我将代码写在了Activity的onCreate中:   [java] view plaincopy  

SQLite的升级

SQLite的升级   做Android应用,不可避免的会与SQLite打交道。随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能,这时候,就需要对SQLite数据库的结构进行升级了。   SQLite提供了ALTER TABLE命令,允许用户重命名或添加新的字段到已有表中,但是不能从表中删除字段。   并且只能在表的末尾添加字段,比如,为 Subscription添加两个字段:     1 ALTER TABLE Subscription ADD COLUMN Activation BLOB;2 ALTER TABLE Subscription ADD COLUMN
一、开机加电 bootloader(汇编语言)进行底层初始化,并加载内核代码,最终跳转到内核的boot程序。 二、Linux内核引导   1)kernel核心初始化(内存初始化,打开中断,初始化进程表等等);   2)驱动初始化;   3)启动内核后台(daemons)线程   4)安装根(root)文件系统   5) 启动第一个用户级进程init 三、init进程启动 init进程的程序在system/core/init/init.c里,它是android系统特定的初始化程序,最终它会以后台进程(daemon)的形式一直存在。该进程主要有如下功能:   1)创建/安 ...
 我们公司手机依然还是支持硬件按键,但是android4.0的虚拟按键,可能被屏蔽了,在查找很多资料,找到了打开虚拟按键的地方。开发基于android源代码的同事们,就知道在framework/base/core/res/res/values/config.xml文件中,有一个标签:                                <bool name="config_showNavigationBar">true</bool>,让其值设置为true,你就可以在你的android界面上看到3个虚拟按键了。
Android动态加载jar/dex 前言    在目前的软硬件环境下,Native App与Web App在用户体验上有着明显的优势,但在实际项目中有些会因为业务的频繁变更而频繁的升级客户端,造成较差的用户体验,而这也恰恰是Web App的优势。本文对网上Android动态加载jar的资料进行梳理和实践在这里与大家一起分享,试图改善频繁升级这一弊病。   声明   欢迎转载,但请保留文章原始出处:)      博客园:http://www.cnblogs.com     农民伯伯: http://over140.cnblogs.com       Android中文翻 ...
对获取图片资源的方法稍作总结: 方式一: 已将图片保存到drawable目录下,通过图片id获得Drawable或者Bitmap,此方式最常用。(若只知道图片的名称,还可以通过图片的名称获得图片的id) (1)通过图片id获得Drawable Drawable drawable=getResource().getDrawable(R.drawable.xxx); (2)通过图片id获得Bitmap Resource res=gerResource(); Bitmap bitmap=BitmapFactory.decodeResource(res, id); (3)通过图片的名称 ...
  前言 相信这样一个问题,大家都不会陌生, “有什么的方法可以使Android的程序APK不用安装,而能够直接启动”。   发现最后的结局都是不能实现这个美好的愿望,而腾讯Android手机游戏平台却又能实现这个功能,下载的连连看,五子棋都没有安装过程,但是都能直接运行,这其中到底有什么“玄机”呢,也有热心童鞋问过我这个问题,本文就为大家来揭开这个谜团。   重要说明
      在开发Android App的过程当中,可能希望实现插件式软件架构,将一部分代码以另外一个APK的形式单独发布,而在主程序中加载并执行这个APK中的代码。       实现这个任务的一般方法是: // 加载类cls Context pluginContext = mainContext.createPackageContext(PLUGIN_PKG, Context.CONTEXT_IGNORE_SECURITY | Context.CONTEXT_INCLUDE_CODE); ClassLoader loader = pluginContext.getClassLoader( ...
getReadableDatabase()并不是以只读方式打开数据库,而是先执行getWritableDatabase(),失败的情况下才调用。 getWritableDatabase()和getReadableDatabase()方法都可以获取一个用于操作数据库的SQLiteDatabase实例。 但getWritableDatabase()方法以读写方式打开数据库,一旦数据库的磁盘空间满了,数据库就只能读而不能写, getWritableDatabase()打开数据库就会出错。getReadableDatabase()方法先以读写方式打开数据库. 倘若使用如果数据库的磁盘空间满了,就 ...
为了方便在Android手机和PC电脑之间文件传输和管理,于是想在Android上建立FTP服务器来实现文件访问及管理操作。从网上找到这个例子后开始使用,结果发现,死活都登录不了,配置不了用户名和密码,匿名登录也登不上,给我急的啊,后来看了一下FTPServer的源码发现需要一个配置文件,所以就找来自己加上了,再一试,OK,可以登录了,分享给大家! 1、导入Apache FtpServer依赖jar包 commons-net-ftp-2.0.jar ftpserver-core-1.0.6.jar log4j-1.2.14.jar mina-core-2.0.4.jar slf4j-a ...
获取系统日期格式:DateFormat.getDateFormat(mContext).format(now)
Global site tag (gtag.js) - Google Analytics