自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 后台通信

后台                         界面截图:     和后台通信的本质还是通过http协议来发送请求和接受请求的,所以要实现通信的效果,还需要有辅助的类来实现,可以不需要太明白这三个类的具体操

2021-01-31 16:15:03 332

原创 后台开发2

1,app和app后台通信一般都用http协议; , 2,长连接(一直连接着):socket和websocket, 短连接(需要时才通信):http  3,app一般以HTTP的形式调用后端提供的API:输入,输出,功能 后端返回给API的格式:JSON(轻量级的数据交换格式),XML(允许用户对自己的标记语言进行定义的源语言,适合万维网的传输,),大多数API以JSON作为数据返回结构(JSON省流量) 例:app一般以HTTP的形式调用后端提供的API接口获取用户信息,服务器以JSON格式返回

2021-01-29 16:58:08 101

原创 后台开发

1、OkHttp3Utils:https://github.com/open-android/OkHttp3UtilsOkHttp3.0封装框架,内部使用gson解析json数据 项目地址:https://github.com/open-android/OkHttp3Utils 简书:http://www.jianshu.com/p/e9258c1bc5ce 使用步骤1. 在project的build.gradle添加如下代码(如下图)allprojects { &n

2021-01-29 16:57:11 143

原创 Android 网络编程

【Android 网络编程】HTTPHTTP简介HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。 HTTP协议的主要特点支持C/S(客户/服务器)模式。简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST,每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。灵活:HTTP允许传输任

2021-01-29 16:55:54 71

原创 消息处理

Google参考了Windows的消息处理机制,在Android系统中实现了一套类似的消息处理机制。学习Android的消息处理机制,有几个概念(类)必须了解: 1.       Message 消息,理解为线程间通讯的数据单元。例如后台线程在处理数据完毕后需要更新UI,则可发送一条包含更新信息的Message给UI线程。 2.       Message Q

2021-01-29 16:53:27 63

原创 绑定服务

介绍    绑定服务是客户端-服务器接口中的服务器。绑定服务可让组件(例如 Activity)绑定到服务、发送请求、接收响应,甚至执行进程间通信 (IPC)。 绑定服务通常只在为其他应用组件服务时处于活动状态,不会无限期在后台运行。     本文向您介绍如何创建绑定服务,包括如何绑定到来自其他应用组件的服务。 不过,您还应参阅服务文档,了解有关一般服务的更多信息,例如:如何利用服务传送通知、如何将服务设置为在前台运行等

2021-01-29 16:51:46 295

原创 广播与服务

一,广播2种不同的注册方式的选择:Andorid 广播有手动注册与清单文件注册2种方式:清单文件注册,不需要在代码中进行任何操作,甚至不需要实例化广播接收者.因为Android将会创建实例并管理它的生命周期.注意的是,接收onReceive()调用的实例只有在onReceive()的持续时间内有效.实际上,每个对onReceive()方法的调用都有可能是在不同的广播接收实例上进行.意味着必须避免异步调用其它类.手动注册,必须在不用时注销广播,如果在一个活动中注销失败会导致一个异常,其中Andorid会发出有

2021-01-29 16:50:17 140

原创 内容观察者

有个很常见的需求就是当有新的短信来的时候,把内容显示在界面上。这里就要用到内容观察者。就是让你的程序监视短信,如果他内容发生变化的时候,你去获取。而短信那边做的情况就 是,当他自己的数据变化时,他告诉有个公共短信内存区,他说,我数据变化了!然后通过短信的内容提供者把短信的内容拿到公共内存区,你的程序再过去拿。这里有点简单的示例代码: ContentResolver resolver = getContentResolver();  Uri uri = Uri.parse(“co

2021-01-29 16:48:05 55

原创 内容提供者

内容提供者应用的数据库是不允许其他应用访问的内容提供者的作用就是让别的应用访问到你的数据库自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数据库的代码,举例增方法 @Overridepublic Uri insert(Uri uri, ContentValues values) {    db.insert(“person”, null, values);    return

2021-01-29 16:45:30 83

原创 Android数据库操作2

Android中采用的数据库是一个轻量级的数据库SQLite,在使用这个数据库时不用再导包, ,使用SQLite数据库时,首先要继承SQLiteOpenHelper,SQLiteOpenHelper是一个用于数据库的创建和管理的类,子类通过实现onCrate来实现数据库的创建,通过实现onUpGrade来实现数据库版本的控制。   通过下面具体代码来了解一下如何创建一个数据库: public classMyDBOpenHelper extends SQLit

2021-01-27 17:37:13 70

原创 Android数据库操作

需求分析: 需要实现人脸检测,识别和聚类的功能.这三个模块是独立的模块,如果面对相册中大量的数据,需要将中间结果存储到数据库中. 因为纯属验证算法的准确性,这里建立的Table比较简单. 建立三个表格,分别是Pciture\Faces\Cluster表 文件结构如下:   GalleryConstrant.java中主要记录表格中列的名称,把列的名称用变量的形式存储起来,方便在其他地方引用. GalleryDatabaseHel

2021-01-27 17:33:26 53

原创 安卓数据库操作

一.SQLite的介绍1.SQLite简介  SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入 式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持 Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java、C++、.Net等,还有ODBC接口,同样比起 Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来

2021-01-27 17:31:20 88

原创 ListView适配器

我们经常会在应用程序中使用列表的形式来展现一些内容,所以学好ListView是非常必需的。ListView也是Android中比较难以使用的控件,这节内容就将详细解读ListView的用法。 一个ListView通常有两个职责。 (1)将数据填充到布局。 (2)处理用户的选择点击等操作。 第一点很好理解,ListView就是实现这个功能的。第二点也不难做到,在后面的学习中读者会发现,这非常简单。 一个ListView的创建需要3个元素。 (1)Li

2021-01-25 16:17:56 425

原创 文件存储

文件存储Android中的文件存储分为内部存储和外部存储。内部存储:将应用程序的数据以文件方式存储到设备的内部(data/【你的APP的包名】/files下),当创建的应用程序被卸载时,其内部存储文件也随之被删除。外部存储:是将文件存储到一些外部设备上,例如SD卡或者设备内嵌的存储卡,属于永久性的存储方式。(一)内部存储 (二)外部存储这里测试实现内部存储:public class MainActivity extends AppCompatActivity { @Override

2021-01-25 16:14:16 197

原创 安卓Activity

安卓Activity Activity的作用Activity是安卓四大核心组件之一,主要功能是提供界面,与用户进行交互。Activity有自己的7个生命周期,一个程序的多个Activity之间没有密切的关联,需要用其进行交互。七个生命周期(1).onCreate():创建Activity时候调用。(2).onRestart():重新启动Activity调用.(3).onStart():Activity变为在屏幕上对用户可见。(4).onResume:Activity开始与用户进行交互时调用。(

2021-01-25 16:10:59 71

原创 Android list view

一,listView简介1,listView的功能:显示列表2,创建ListView的三要素:(1)布局(决定每一行可以显示什么东西)(2)数据:填入View的文字、图片等内容,或者是某些基本组件; (3)适配器:布局和数据都是先放在这里面的,然后再用ListView1.setAdapter(适配器)来设置ListView1中显示什么东西,即将ListView绑定到适配器上。3,适配器有几种呢?(1)ArrayAdapter,用来绑定一个数组,显 示一行文字;(2)SimpleAdapter,在xml中定义

2021-01-23 18:47:05 187 1

原创 UI高级组件

Android高级UI组件适配器组件适配器的作用适配器充当适配器控件和该视图数据之间的桥梁。适配器提供访问的数据项,并负责产生数据组中的每个项的视图。常用的适配器BaseAdapter:抽象类,具有较高的灵活性。ArrayAdapter:最为简单,智能展示一行文字。SimpleAdapter:有较好的扩充性,可以自定义出各种效果。SimpleCursorAdapter:主要用于操作数据库。常用的适配器控制适配器控件扩展自ViewAdapter,是通过适配器加载数据并产生每一项的UI,常见的适配器控件如

2021-01-21 15:33:58 139

原创 Android 自定义对话框 res资源文件

Android 自定义对话框 res资源文件this表示该对话框是针对当前Activity的Progress ProgressDialog=new ProgressDialog(DialogActivity.this)设置最大值为100ProgressDialog.setax(100)设置可以被取消;back其他位置ProgressDialog.setCanceable(true)ProgressDialog.show自定义Dialog继承Dialog类实现构造方法和Create在style.xml中定

2021-01-20 18:44:40 125 1

原创 UI对话框

安卓提供了丰富的对话框支持,它提供了如下4种常用的对话框。AlertDialog:功能最丰富、实际应用最广泛的对话框。ProgressDialog:进度对话框,这个对话框只是对进度条的包装。DataPickerDialog:日期选择对话框,这个对话框只是对DataPicker的包装。TimePickerDialog:时间选择对话框,这个对话框只是对TimePicker的包装。使用AlertDialog创建对话框可以生成各种内容的对话框,实际上生成的对话框的结构是一定的,结构如下:区域分为四个:图标

2021-01-19 16:57:25 114

原创 UI组件使用

1.在xml中定义界面元素 在android中通过xml标记就可以定义该标记对应的视图类或者子类。 例如:xml中的,标记,就可以对应一个按钮实例,而这个对应过程可以由android软件自动完成,这样就实现了xml与java代码具有等同的效果。 这种直接通过xml标记定义界面组件的机制,实现了界面代码与逻辑代码分开的效果。2.在java代码中定义界面元素 这种方式比较常见,即在代码中通过new语句初始化一个类实例,然后设置其属性,调用其方法(老师上课时就用的时此种方法定义元素) 二、U

2021-01-18 16:38:41 162

原创 Android布局

android 布局属性大全第一类:属性值为true或falseandroid:layout_centerHrizontal  水平居中android:layout_centerVertical   垂直居中android:layout_centerInparent    相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alignParentLeft  

2021-01-17 16:31:40 26

原创 绝对布局

AbsoluteLayout(绝对布局),又可以叫做坐标布局,可以直接指定子元素的绝对位置四大控制属性控制大小: android:layout_width:组件宽度 android:layout_height:组件高度控制位置: android:layout_x:设置组件的X坐标 android:layout_y:设置组件的Y坐标绝对布局由AbsoluteLayout代表。绝对布局就像java AWT编程中的空布局,就是Android不提供任何布局控制而是由开发人员自己通过X坐标、Y坐标来控制组件的位置。当

2021-01-16 16:42:38 1016

原创 Android UI 事件

Android UI 事件  在Java和android中,通过事件来与各种输入设备进行沟通。  事件是由OS产生的消息,当某个UI元素被用户以特定方式进行操作时,OS就会将事件消息发送给相应的View对象。监听及事件处理  “处理”(Handle)与“处理程序”(Handler)View类处理UI事件  在应用程序中,每一个UI元素都是彼此不同的实例化View对象,每一个对象都包含专属于该View对象的事件。  在布局中,一个View对象是通过公共的回调(Callback)方法来与应用程序的其

2021-01-14 14:45:05 70

原创 Android简介

Android简介Android本意指机器人,谷歌公司将Android的标识设计为一个绿色机器人,绿色机器人系统符合环保概念,是一个轻薄短小,功能强大的移动系统,是第一个真正为手机打造的开放性系统。Android是一种基于Linux的开源的操作系统。主要使用于移动智能设备,如智能手机、平板电脑和智能电视等Android操作系统最初由Andy Rubin开发、主要支持手机目前Android系统由Google公司和84家硬件制造商、软件开发商及电信营运商组建的开放手机联盟领导及开发。第一代通信技术(1G):

2021-01-13 14:20:47 1278

原创 java程序设计——GUI

ui 组件JAVA 的图形用户界面的最基本组成部分为组件,组件是一个可以以图形的方式,显示在屏幕上并能与用户进行交互的对象,例如一个按钮,一个标签等。组件不能独立显示出来,必须将组件放在一定的容器中,才可以显示出来。在component 类中定义了AWT 组件具有的一般功能,如大小和位置控制,外形控制,组件的状态和控制等AWT 支持的组件,按钮,标签,文本框,文本区,复选框,单选按钮,滚动条,表格,菜单等容器容器实际上是component 的子类,因此容器本身也是一个组件,具有组件的所有性质,

2020-05-27 12:16:34 242

原创 代码练习5

public static void main(String args[]){new TicketWindow().start();new TicketWindow().start();new TicketWindow().start();new TicketWindow().start();}class TicketWindow extends Thread{private i...

2019-12-20 11:39:03 68

原创 线程2

线程线程的优先级在应用程序中,如果要对线程进行调度,最直接的方式就是设置线程的优先级。优先级越高的线程获得cpu执行的机会越大,而优先级越低的线程获得cpu执行的机会越小,线程的优先级用1-10之间的整数来表示,数字越大优先级越高。线程休眠如果希望人为地控制线程,使正在执行的线程暂停,将cpu让给别的线程,这时可以使用静态方法sleep,该方法可以让当前正在执行的线程暂停一段时间,进入休眠...

2019-12-20 11:30:59 81

原创 线程和进程

线程和进程进程是可用于资源的单位进程和线程都是一个控制流程一个进程通常对应一个程序一个程序可以由多个不同线程构成线程 进程在运行过程中的执行走向线程又可以称为轻量级进程进程的两个基本特征1.进程是可用于资源的独立单位2.进程同时可以独立调度和分派的基本单位创造多线程的方法1.继承Thread类2.实现Runable接口线程的状态新建状态 就绪状态 运行状态 阻塞...

2019-12-20 10:48:41 54

原创 代码练习4

import java.util.*;public class Main{public static void main(String args[]){Scanner cin = new Scanner(System.in);int x;while (cin.hasNext()){x = cin.nextInt();if((x%4000)||x%40&&x%100!=...

2019-12-17 11:22:57 86

原创 代码练习3

import java.util.*;public class Main {public static void main(String args[]){Scanner cin = new Scanner(System.in);int year;int month; while (cin.hasNext()) { year = cin.nextInt();...

2019-12-17 11:22:12 78

原创 代码练习2

import java.util.*;public class Main {public static void main(String args[]){Scanner cin = new Scanner(System.in); while (cin.hasNext()) { int sum=0; int x; ...

2019-12-17 11:21:35 52

原创 代码练习1

import java.util.*;public class Main {public static void main(String[] args) { Scanner sc = new Scanner(System.in);while (sc.hasNext()){ int year=sc.nextInt();int month=sc.nextInt();int day...

2019-12-17 11:20:39 121

原创 构造方法的重载

构造方法的重载范例1class Student {public Student() {System.out.println(“无参的构造方法”);}public Student(String name) {System.out.println(“一个参数的构造方法”);}public Student(String name, int age) {System.out.print...

2019-12-17 10:32:23 93

原创 垃圾回收机制

垃圾回收机制垃圾对象会占用一定的内存空间,当垃圾对象积累到一定程度后,Java虚拟机会自动进行垃圾回收。但是,如果希望程序可以及时通知Java虚拟机回收垃圾对象,可以通过System.gc()方法强制启动垃圾回收器回收垃圾。Object类在JDK中提供了一个Object类,它是所有类的父类,即每个类都直接或间接继承自该类。Object类是Java中所有类的父类,每个类都直接或间接继承自该类...

2019-12-17 10:31:37 49

原创 Try….catch和throws

Try….catch和throwstry代码块中编写可能发生异常的Java语句,catch代码块中编写针对异常进行处理的代码。在try代码块中,发生异常语句后面的代码是不会被执行的。可能发生多个异常时,可以使用多个try…catch或者用一个try多个catch。Throwable:是异常体系的超类.Error 重大的错误,这个问题发生后,一般我们处理不了,一般不处理,而是要程序进行修正 ...

2019-12-17 10:30:50 110

原创 代码示例

代码示例:public class Student {private int sid;private String name;private double score;public Student() {}public Student(int sid, String name, double score) {this.sid = sid;this.name = name;this...

2019-12-17 10:28:19 80

原创 多态

多态在Java中为了实现多态,允许使用一个父类类型的变量来引用一个子类类型的对象,根据被引用子类对象特征的不同,得到不同的运行结果。多态提高代码了的扩展性和可维护性。多态是指对象在不同时刻表现出来的不同状态,在Java中,允许使用一个父类类型的变量来引用一个子类类型的对象。多态的前提:要有继承关系。要有方法重写。要有父类引用指向子类对象。多态的好处是提高代码的扩展性和可维护性。多态...

2019-12-16 16:49:38 100

原创 接口

接口接口使用interface关键字来定义。接口没有构造方法,接口中的变量缺省都是使用public static final修饰的,即全局常量,接口中的方法都是public abstract修饰的,即抽象方法。定义一个类,并使用implements关键字实现接口中的方法,一个类可以实现多个接口。由于接口中的方法都是抽象方法,因此不能直接通过实例化对象的方式来调用接口中的方法,需要在类实现接...

2019-12-16 16:48:49 880

原创 方法的重写heFinal类

方法的重写子类中需要对继承自父类的方法进行一些修改,这时就用到方法重写。在子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表以及返回值类型。子类方法的访问修饰权限不能小于父类的。重写的主要优点是能够定义子类特有的特征。Final类Java中的类被final关键字修饰后,该类将不可以被继承,也就是不能够派生子类。为了让初学者熟悉final关键字修饰类的用法,子类可以继承父类...

2019-12-16 16:47:42 179

原创 类的继承

类的继承在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。在Java中,多个类可以继承一个父类,但是一个类不能直接继承多个类,一个类只能有一个直接父类。父类是由子类不断抽取而来的,不断地抽取就形成了体系结构,这个结构称为继承体系结构。子类在继承父类的时候,会自动拥有父类所有的成员。继承的好处是划分了类的层次性,实现了代码重用、扩展了程序功能。...

2019-12-16 16:46:48 91

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除