- 博客(46)
- 收藏
- 关注
原创 Android 后台开发通信
Android 后台开发通信 在这里插入代码片public class MainActivity extends AppCompatActivity { String TAG = MainActivity.class.getCanonicalName(); private EditText et_data_uname; private EditText et_data_upass; private HashMap<String, String> stringHashMap; @Override
2021-03-06 17:55:23
120
原创 网络通信
JSON 一、什么是JSON? 1、JSON(JavaScript 0bject Notation)是一种轻量级的数据交换格式 2、客户端(浏览器端)与服务器端交互: xml json 3、木质就是具有特定格式的字符串 4、JSON数据已经是客户端与服务器端交互的最常用的选择,已经很少使用xml来进行数据交互了 二、JSON数据格式 整体结构: String json1 ="{“id” : 12,“name”:“Tom”}"; String json2 ="[{“id” : 12,“name”: “Tom”
2021-03-06 17:53:00
112
原创 网络编程
二、 Handler消息机制 1、使用Handler的一般步骤 ①创建Handler成员变量对象,并重写其handleMessage() ②在分/主线程创建Message对象| ③使用handler对象发送Message ④在handleMessage()中处理消息 ⑤Handler消息处理首先需要在UI线程创建一个Handler对象,然后在子线程中调用Hanlder的sendMessage()方法,接着这个消息会存放在UI线程的MessageQueue中,通过Looper对象取出MessageQueue中
2021-03-06 17:51:27
134
原创 Android 开发后台
Android 开发后台 Android 开发后台 再在servlet包下面创建LoginDateServlet 服务package com.hxb.servlet;import java.io.IOException;import java.sql.ResultSet;import java.sql.SQLException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.se
2021-02-25 13:48:14
126
原创 Android网络通信的六种方式
Android网络通信的六种方式 手机作为一种通讯终端(MMS),伴随着网络的升级而不断的升级换代。1995年1G问世,手机只能进行基本的语音通讯,1996-1997年2G(GSM,CDMA)及其后的GPRS,EDGE等技术的快速发展,手机开始逐渐增加了数据服务功能。2009年开始,3G在全世界开始大规模布置以及苹果创造性开发新型苹果手机。手机慢慢的变成互联网的终端,从而带动了一个新的时代–移动互联网时代。因此现代手机通常都支持这些常用网络设备,如WIFI,NFC,蓝牙等。 Android是由互联网巨头Go
2021-02-24 22:46:28
1050
原创 Android 网络编程
标题 Android 网络编程 HTTP HTTP简介HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。HTTP协议的主要特点支持C/S(客户/服务器)模式。简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST,每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。灵活:HTTP允许传输任意类型
2021-02-24 22:43:16
78
原创 2021-02-24
Android探索之路(一)——消息处理机制 摘要 Android应用程序是通过消息来驱动的,当Android主线程启动时就会在内部创建一个消息队列。然后进入一个无限循环中,轮询是否有新的消息需要处理。如果有新消息就处理新消息。如果没有消息,就进入阻塞状态,直到消息循环被唤醒。那么在Android系统中,消息处理机制是怎么实现的呢?在程序开发时,我们经常会使用Handler处理Message(消息)。所以可以知道Handler是个消息处理者,Message是消息主体。除此之外还有消息队列和消息轮询两个角色。
2021-02-24 22:40:42
115
1
原创 2021-02-24
Android-绑定服务调用服务的方法 Service按照其启动的方式,可分为两种: 1、StartedStarted的Service,通过在Application里用startService(Intent intent)方法来启动。这种类型的Service一经启动,会在后面无休止地运行,即使启动它的Activity被Destroy掉。要停止此类型的Service,可在Service中调用stopSelf()或在Application中调用stopService(Intent intent),要不然就只能等
2021-02-24 22:34:40
76
原创 广播和服务
1.为什么需要广播接受者 广播接受者:收音机; 电台:中央人民广播电台 93.4MHZ 发送消息; 收音机:买一个收音机,收音机接受广播; 原因:Android系统内部内置了一些公共事件的广播消息(电量不足、电量充满、接收到短信、外拨电话、SD卡状态等)。 当开发人员接收到这些消息事件后可以开发一些对用户有用的业务逻辑; 2.广播接受者案例_ip拨号器(重点) ...
2021-02-20 17:44:21
65
原创 内容观察者广播
ContentObserver——内容观察者,目的是观察(捕捉)特定Uri引起的数据库的变化,继而做一些相应的处理,它类似于 数据库技术中的触发器(Trigger),当ContentObserver所观察的Uri发生变化时,便会触发它。触发器分为表触发器、行触发器, 相应地ContentObserver也分为“表“ContentObserver、“行”ContentObserver,当然这是与它所监听的Uri MIME Type有关的。 熟悉Content Provider(内容提供者)的应该知道,我们可以
2021-02-20 16:53:17
64
原创 内容提供者
内容提供者。就按字面意思来理解 Android手机的内容,提供出来的工具 在做黑马教程(手机卫士)的时候就要提取出联系人,短信等数据的时候就要到了内容提供者 它是不同应用程序直接进行数据交换的标准API,当一个应用程序需要把自己的数据暴露出来给其他应用使用的时候,该应用程序 就可以通过提供contentProvider来实现:其他应用程序就可以通过ContentResolver来操作ContentProvider暴露出来的数据(抄的疯狂Android) 这里就可以知道,Android的内容提供者是有两部分组
2021-02-20 16:32:42
132
1
原创 数据库操作操作
1.用了什么数据库 android中采用的数据库是SQLite这个轻量级的嵌入式开源数据库,它是用c语言构建的。相关简介可以从链接查看。 2.数据库基本知识观花 对于一些和我一样还没有真正系统学习数据库技术的同学来说,把SQL92标准中的一些基本概念、基本语句快速的了解一下,是很有必要的,这样待会用Android的database相关方法去执行一些数据库语句时就不会茫然了。 ①数据库的基本结构——表格 表格是数据库中储存资料的基本架构。表格被分为栏位 (column) 及列位 (row)。每一列代表一笔资料
2021-02-20 16:27:46
78
原创 文件存储
数据存储在我们android开发中是不可避免的,而且,我们也都知道数据存储的方式,文件存储,SharedPreference,数据库存储等。但是应该也有一部分人, 只是知道这些存储方式,或者说只知道怎么用,但是不知道具体被保存在什么地方。本篇文章将详细分析这三种存储方式。 算了不卖关子了,其实,在我看来数据存储,或者说数据的持久化,就分为两类。内部存储,外部存储。 /** * Returns the absolute path to the directory on the filesystem where
2021-02-19 20:19:35
155
原创 高级组件
一、Notification 1、Notification,是一种具有全局效果的通知,可以在系统的通知栏中显示。当APP向系统发出通知时,它将先以图标的形式显示在通知栏中。用户可以下拉通知栏查看通知的详细信息。通知栏和抽屉式通知栏均是由系统控制,用户可以随时查看。 2、显示接收到短消息、及时消息等信息(如QQ、微信、新浪、短信) 3、显示客户端的推送消息,如广告、优惠、版本更新、推荐新闻等,常用的第三方SDK有:JPush 、个推﹑信鸽、网易云信(偏重IM ) 4、显示正在进行的事物,例如:后台运行的程序,
2021-02-19 20:17:10
70
原创 自定义对话框res资源文件
** 2015-10-8上午11:13:09 wangzhongyuan */ package com.shjc.jsbc.view2d.dialog; import android.app.Dialog; import android.content.Context; import android.view.View; import com.CL.CrazyRacing.game.R; /** buySuccessDialog 购买成功提示,对话框, 调用buySuccessDialog.Inst
2021-02-19 20:14:28
119
原创 UI对话框
安卓提供了丰富的对话框支持,它提供了如下4种常用的对话框。 AlertDialog:功能最丰富、实际应用最广泛的对话框。 ProgressDialog:进度对话框,这个对话框只是对进度条的包装。 DataPickerDialog:日期选择对话框,这个对话框只是对DataPicker的包装。 TimePickerDialog:时间选择对话框,这个对话框只是对TimePicker的包装。 其中,功能最强用法最灵活的是AlertDialog,应用广泛,其他的对话框都是其子类。 创建一个对话框大概需要如下几个步骤:
2021-02-19 20:11:33
107
原创 UI组件使用
Android 应用中的所有用户界面元素都是使用 View 或者 ViewGroup 对象来构成,通过使用 View 或者 ViewGroup 定义对象的层次结构后即可在里面绘制UI。 2.四种常用UI组件 2.1 SimpleAdapter SimpleAdapter从名字看是简单的适配器,但是使用起来并不是很简单,而且能够实现的功能也不是简单的几种,功能相当强大。ListView的大部分应用场景都可以用SimpleAdapter来实现。 新建一个Listview,宽度占屏,高度由内容定。 2.2 Ale
2021-02-18 16:35:08
200
原创 布局类型
布局的类型 有几种布局:为了适应不同界面的风格,android为开发人员提供了5种常用布局,分别是LinearLayout(线性布局)、RelativeLayout(相对布局)、FrameLayout(帧布局)、TableLayout(表格布局)/AbsoluteLayout(绝对布局)。 线性:主要以水平和垂直的方式来显示界面中的控件。 相对布局:相对布局是通过相对定位的方式指定控件位置,即以其它控件或父容器为参照物,摆放控件位置。 帧布局:帧布局是Android中最简单的一种布局,该布局为每个加入其中的
2021-02-18 16:30:26
686
原创 2021-02-08
ui事件 新建工程,搭建完后运行,启动 ui界面是人与手机之间数要据传递,交互信息的重 要媒介和对话接口 安卓程序开发最重要的一个环就是界面处理,界面美观度直接影响用户的第一印象,因此开发一个整齐,美观的界面是至关重要的 安卓应用界面是由视图和视图组组成的 当用户通过手指触摸ui时,系统会自动创建对应的event对象 安卓中提供了多种拦截处理不同类型的事件视图本身可以处理发生在该视图上的事件 事件源:组件 事件监听器:第三方 注册监听器:异名类 ...
2021-02-08 15:33:42
77
原创 Android 环境搭建
环境搭建 第一步:下载Android studio(intellij ide)安装目录放到大的盘符下 启动设置sdlk目录:主题自己定 第一次启动时下载比较多;大家一定要联网,等待自己编译完成 下载模拟器 尽量安装64位的 安装到同一个地址下 尽量配环境变量 下载Android studio 下载选择其他平台 配置:8g 模拟器:2g ...
2021-02-08 15:10:03
66
原创 2021-02-08
Android开发第一章节 Android 是当今最流行的智能手机操作系统之一。 随着人气的增加,它存在很多安全风险,这些风险不可避免地被引入到应用程序中,使得用户本身受到威胁。 我们将在本书中以方法论和循序渐进的方式来讨论 Android 应用程序安全性和渗透测试的各个方面。 本章的目标是为 Android 安全打下基础,以便在以后的章节中使用。1.1 Android 简介自从 Android 被谷歌收购(2005 年),谷歌已经完成了整个开发,在过去的 9 年里,尤其是在安全方面,有很多变化。 现在,它
2021-02-08 14:30:40
74
原创 一:文件读写操作
一:文件读写操作 1.JAVA io :输入输出操作:一组有序的,起点,终点字节的集合;对数据传输总称 2.读取磁盘数据,网络数据,输入输出 3.缓冲区技术 4.字节,字符, 5.inputstrean:抽象类 6.outputstream,out 7.system.in 8.systetm.out 二。文件自身 1.文件操作类 2.fileinputsream fin=new filein...
2019-12-24 22:57:50
79
原创 JAVA中的常用类
JAVA中的常用类 String 类的初始化 在操作string类之间,首先需要对string类进行 初始化,在JAVA中,可以通过以下两种方式对string类和stringbuffer 进行详细讲解 string:创建一个内容为空的字符串 string(string value)根据指定的字符串内容创建对象 string(char【】value)根据指定的字符数组创建对象 public clas...
2019-12-23 23:41:39
72
原创 异常
异常 throwable常用方法 String getMessage():返回此throwable的详细消息字符串 void printStacktrac():将此throwable及其追踪输出至标准错误流 void printStackTliuce(PrintStream s):将次throwable及其追踪输出到指定的输出流 异常的类型 1.编译时类型 2.运行时类型 throw:除了可以通...
2019-12-23 23:24:18
138
原创 线程的生命周期
线程的生命周期 新建 就绪 运行 阻塞 死亡 使用runnable接口:适合多个相同程序代码的线程去处理同一资源的情况 阻塞:调用sleep放弃占用资源 调用阻塞io方法 等待同步锁 等待通知 解除阻塞:sleep时间结束 阻塞式io方法 获得同步锁 与线程控制有关的方法: start(): 新建的线程进入runnable状态 run():线程进入running状态...
2019-12-22 22:35:38
63
原创 线程的概念
线程的概念 1.程序:是一段静态代码,它是应用软件执行的蓝本 2.进程:是程序的一次执行过程,是系统运行程序的基本单位 3.线程:是比进程更小的执行单位,相当于一个任务中的一条执行路径可以创建和撤销,分为单线程和多线程 进程:进程为一个数据结构及能在其上进行的一次操作 创建多线程的方法:继承thread和实现runnable thread 1.JAVA的线程通过thread类控制,一个thread...
2019-12-22 22:11:21
228
原创 JAVA集合三大类
JAVA集合三大类:1.set:set集合无法记住添加的顺序,因此set集合中的元素不能重复 2.list:与数组类似,list集合可以记住每次添加元素的顺序,因此可以根据元素的索引访问list集合中的元素,list集合中的元素可以重复且长度是可变的 3.map集合:每个元素都是key,v alue 键值对组成,可以根据每个元素的key来访问对应的value,map集合中的key不允许重复,va...
2019-12-21 23:15:52
926
原创 集合的概述
集合的概述 1.概述:是一种常用的数据类型,在使用JAVA集合类,不必考虑数据结构和算法的具体细节,根据需要直接使用这些集合类并调用相应的方法即可,从而提高了开发效率 2.JAVA所有的集合类都在JAVA…util包下,从jdk5.0开始为了处理多线程环境下的并发安全问题,又在java,util。concurrent包下提供了一些多线程支持集合类 3.JAVA集合类主要由两个接口派生而:colle...
2019-12-19 22:45:26
93
原创 内部类
内部类 1.静态内部类:参照静态方法使用外部类以外 成员内部类:是外部类成员,可以调用外部成员 2.非静态内部类: 局部内部类:内部类可以访问外部类成员 内部: public class nei{ int a; public void testnei(){ test wai syst,out .println(b); 外部; public clas=s wai{ private int b=1...
2019-12-16 22:58:00
54
原创 单例模式
单例模式的实现方式 1.构造方法私有 2.用一个私有静态变量引用实例 public class A{ private ststic A a; private A(){ 抽象类:abstrat 关键字来修饰 语法【访问符】 abstsrt class 类名{ 【访问符】abstsrt 《返回类型》方法(【参数列表】) 单例模式不能是私有不能是静态 ...
2019-12-16 22:46:39
57
原创 final 关键字
final 关键字 finalg关键字表示“不可改变的,最终的”的意思,用于修饰变量方法和类。 内部类:在一个类的类体之内在定义一个类,该情况下面的类成为 类里面的类称为内部类 内部类:可以方便的访问外部类的私有成员属性 匿名内部类:就是没有名字的内部类 不能有构造方法 不能定义任何静态成员方法和类 只能创建匿名内部类的一个实例 ...
2019-12-12 22:44:41
74
原创 instanceof 操作符
instanceof 操作符 X instanceof A:检验 x 是否为A类的对象 public class Main{ public static void main (string args[]){ Person person =new person Student student =new student(); system.out .println(student ins...
2019-12-11 23:06:57
164
原创 多态性
多态性 多态性:是面向对象中最重要的概念,有俩种体现 1.方法的重载和重写 2.对象的多态性—可以直接应用在抽象类和接口上 java引用变量有两种类型:编译时类型和运行时类型 编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋值变量对象决定 instanceof 操作符 x instanceof A:检验x是否为A类的对象 ...
2019-12-09 22:55:26
88
原创 多态性
多态性 多态性:是面向对象中最重要的概念有两种体现 1.方法的重载和重写 2.对象的多态性—可以直接应用在抽象类和接口类上 JAVA引用变量有两种类型:编译时类型和运行时类型 编译时类型由声明改变量是使用的类型决定,运行时类型由实际赋值变量对象决定 JAVA的多态性是由类的继承,方法重写以及父类引用指向子类对象体现的,由于一个父类可以有多个子类,多个子类都可以重写父类,并且多个不同的子类对象也可以...
2019-12-07 14:50:02
98
原创 方法的重写
方法的重写 定义:在子类中可以根据需要对从需要对从父类继承来的方法进行改造,也称为方法的重置,覆盖,在程序执行时,子类的方法将覆盖父类的方法 要求:1.重写方法必须和被重写方法具有相同的方法名称,参数列表 2.重写的方法的访问权限不能大于被重写方法的返回值类型 3.重写的方法的访问权限不能小于被重写方法的访问权限 4.子类方法抛出的异常不能大于父类被重写方法的异常 关键字super: 1.supe...
2019-12-05 21:54:50
158
原创 第五章 类之间的关系
第五章 类之间的关系 面向对象的特征:继承性 未描述和处理个人信息,定义类person publics class person public string name; public int age; public data birtdata 1.为什么要继承? 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中那么多个类无需再定义这些属性和行为,只需继承那个类即可 2. ...
2019-12-02 17:15:22
191
原创 静态成员
静态成员 JAVA中可以使用ststic关键字来修饰类的成员变量和方法,这些被ststic关键字修饰的成员也称为静态成员 public class JAVA { private int x=10; ststic int ststic CY=99 public staticvoid JAVA(){ system .out .println(“ststic JAVA”); } 静态方法的定义十分简单...
2019-11-30 11:56:45
163
原创 包
包 JAVA 引入包的机制,提供了类的多层命名空间,解决类的命名冲突 访问控制符:1.封装是面向对象的特征之一 2.封装实际上把隐藏的隐藏,该暴露的暴露,这些都需要通过JAVA访问控制符来实现。 4种级别:1.private:被当前成员,类以外看不到 2.缺省:缺省的可以被同一包中的所有类访问 3.portected:被声明为portected的成员既可以被同一包中的其他类访问,也可以被不同包中的...
2019-11-30 11:39:46
87
原创 面向对象
面向对象 类关系:或关系 与关系 面向对象的特征:唯一,分装,继承,多态性 类定义了一种新的数据类型,是具有相同特征和共同行为的一组对象集合 访问对象:对象名.属性名 语法:【访问符】【修饰符】《返回类型》方法名【参数列表】 形参:形式上的参数 格式:方法名(数据类型 形参) 构造方法的方法名与类名相同,且没有返回值也没有void this关键字:代表当前所在类将来产生的对象,即将用该类new...
2019-11-30 11:16:46
143
原创 数组
数组 是一种数据结构,用来存储一组大小固定并且类型相同的数据,可将数据分为一维数据,二维数组和多位数组 语法:数据类型【】数组名或数据类型 数组名【】 注意:数组被创建后,其大小不能改变,但数组中的各个元素值是可以改变的,且访问数组中的元素时,标索引不能越界,范围必须在0 -1,否则容易引发数组越界异常 初始化数组:静态初始化 int 【】a={1,2,3,4,}; 动态初始化 i...
2019-11-28 22:19:10
130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人