自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

rhyme_op_lph的博客

广州小码农仔一枚

  • 博客(39)
  • 资源 (7)
  • 收藏
  • 关注

原创 Dart-Aqueduct框架开发(八)

声明:本文首发于微信订阅号:Dart客栈,微信后台回复05168获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!1. 介绍这一节我们来学习一下基于OAuth2.0的用户授权访问2.什么是OAuth?我们只需要明确,当用户使用用户名和密码进行登录时,服务端会返回访问令牌token、刷新令牌refreshToken、访问令牌过期时间给客户端,客户端把令牌保存下来,下次访问向服务器证明已经登录,只需要使用访问令牌进行访问即可,当令牌过期时,我们需要使用刷新令牌,重新把访问令牌请求下来覆.

2020-05-17 09:44:50 811

原创 Dart-Aqueduct框架开发(七)

上一篇声明:本文首发于微信订阅号:Dart客栈,微信后台回复05167获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!1. 介绍这一节我们来详细的学习一下文件控制器FileController2. 什么是文件控制器?可以从名字看出,这个控制器用于管理文件的,一般来说,如果服务器拥有后台管理系统或者官网的话,都会挂web资源到服务器中,就以Java为例,我们通常将jsp文件挂在Java服务器下,当然了,这个是小编当初在大学学习时候的做法,因为那时候移动设备还不算特别发达,有一个网

2020-05-17 09:44:09 628

原创 Dart-Aqueduct框架开发(六)

上一篇声明:本文首发于微信订阅号:Dart客栈,微信后台回复05166获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!1.介绍这一节我们来学习一下资源控制器ResourceController2. 什么是资源控制器?可以从名字看出,这个控制器是用来管理资源的,也就是上一节中介绍了控制器B,也可以称为端点的控制器,可以用以下图来描述:从上图可以得到的信息为,控制器可以处理多个请求路径,并可返回不同的内容,那么为什么它可以处理这么多个请求呢?如果多次请求让Controller处

2020-05-17 09:43:33 474

原创 Dart-Aqueduct框架开发(五)

上一篇声明:本文首发于微信订阅号:Dart客栈,微信后台回复05165获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!1.介绍这一节我们来学习一下**Controller处理请求**2.什么是控制器Controller在Aqueduct框架中,我们主要使用Controller进行对请求和响应的处理,例如:我们可以使用控制器返回文章列表,也可以使用控制器验证请求是否通过,而这些控制器可以连在一起,构建成一个通道,当前一个控制器验证不通过时,这条请求将会被拦截掉,可以用下图来展示:

2020-05-17 09:42:48 483

原创 Dart-Aqueduct框架开发(四)

上一篇声明:本文首发于微信订阅号:Dart客栈,微信后台回复05164获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!1.介绍这篇文章将详细介绍URL、路由,前几篇有小伙伴私信留言说讲得有点快,感觉跟不上,所以,接下来的文章中,将详细介绍Aqueduct的相关内容.2.什么是URL?每个http请求都有一个URl,可以作为客户端访问服务器的一个访问路径,例如:http://xxxx.com/image/xxx.jpg,当客户端请求该路径地址时,服务端将返回对应的图片资源给客户端

2020-05-17 09:42:13 438

原创 Dart-Aqueduct框架开发(三)

上一篇声明:本文首发于微信订阅号:Dart客栈,微信后台回复05163获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!简介这篇文章将学习如何设置配置文件,连接PostgreSQL数据库1. 添加配置文件我们可以在main.dart中找到option.configurationFilePath,它的值对应为配置文件的路径,默认以项目为根路径import 'package:demo/demo.dart';Future main() async { final app =

2020-05-17 09:41:22 985 1

原创 Dart-Aqueduct框架开发(二)

上一篇声明:本文首发于微信订阅号:Dart客栈,微信后台回复05162获取本篇源码文章为原创,如需转载请注明出处,并告知作者,谢谢!1.简介上篇文章中,我们学习了Aqueduct这个Dart服务器框架的核心概念和如何搭建环境,启动项目,今天我们来学习以下Aqueduct项目的整体结构、项目配置及如何编写我们的api接口2.项目结构配置编译工具我们一般以IDEA编程工具打开项目,在打开之前,我们需要添加Dart开发插件,打开IDEA,然后选择configure,找到Plugins在弹出

2020-05-17 09:40:30 678

原创 Dart-Aqueduct框架开发(一)

声明:本文首发于微信订阅号:Dart客栈文章为原创,如需转载请注明出处,并告知作者,谢谢!1.介绍Aqueduct是一个HTTP Web服务器框架,用于构建用Dart编写的REST应用程序。2.核心概念资源(Resources)资源是应用程序通过其HTTP API公开的内容,可以是任何东西,例如:分数,帖子,用户关系等,在获取资源时,一般以JSON的形式存储在响应体中。路由(Routing)HTTP请求资源的路径标识,例如:http://www.baidu.com ,当我们访问百度时,百.

2020-05-17 09:38:54 1995 2

原创 Flutter升级到预览版

本篇文章简单教你升级到预览版1.正常升级 当我知道今天Flutter推出了预览版,迫不急道的正常输入我们Flutter的升级命令. //升级版本命令 flutter upgrade你会看到如下所示,等待更新完..(嘿嘿,也有可能卡在那里一动不动是王八…) 等到最后,还是出错了,好吧,我们来看非正常更新(根本就不能正常更新嘛) 2....

2018-06-21 22:54:33 3849

原创 View与ViewGroup的触摸事件分发实测

布局如下: 测试结果: 正常 D/ViewGroupA: dispatchTouchEvent D/ViewGroupA: onInterceptTouchEvent D/ViewGroupB: dispatchTouchEvent D/ViewGroupB: onInterceptTouchEvent D/ViewA: dispatchTouchEvent D/Vi

2018-01-02 16:45:36 179

原创 Android中导出Sqlite数据库文件打开异常database disk image is malformal

前言最近公司将安卓平板中的应用数据库导出进行查看时,打开发现查看不了,并一打开提示"database disk image is malformal"分析原因它产生的原因有很多种可能,比如:磁盘空间不足,写入过程突然断电等.修复数据库1.下载工具2.解压文件3.将要修复的数据库复制到该目录下4.打开cmd程序切换到该目录下例如我的

2017-12-05 11:06:02 597

原创 ForeverViewPager 无限循环轮播图

前言:纵观百度,没有发现一个好用的轮播图,于是着手自己打造一款好用的轮播图,方便下次使用,并分享给大家,欢迎大家fork和star着急的朋友可以直接点击这里1.添加gradlebuild.gradle Project allprojects { repositories { ... maven { url 'https://jitpack.io' } }

2017-10-09 11:36:23 419

原创 Android之Mob短信验证简单使用

前言前几天刚刚集成了短信验证的功能,看了下官网的api使用,觉得不够简单易用,于是就自己封装到一个SimpleMobSMS类中,方便下次使用一行代码即可,1.发送验证码 /** * sendCode(区号,手机号码,监听) */ SimpleMobSMS.SendCode("86", "15913190463", new S

2017-09-29 09:21:12 406

原创 Android代码跳转到设置相关

前言很多情况下,我们都需要跳转的系统相关的页面,引导用户进行对自己应用权限的添加,这里,我总结了一些相关的跳转setting代码首先通用的代码为下面,需要传入的意图进行活动的跳转Intent intent=new Intent(意图);startActivity(intent);设置意图大全(测试机型,红米note4x)Setting类下的

2017-09-14 14:14:51 2038

原创 (Android网络4)Retrofit

前言一次偶然的机会,我学习了retrofit,使用起来十分方便,并且使代码的逻辑思路都清晰起来,如果配合RxJava,可以省掉大部分重复的代码,可以说,这一个网络框架是当前最火热的,让我们来起学习吧!1.Retrofit介绍Refrofit是由Square公司基于okhttp进一步封装而成的,Retrofit特点1.减少解耦,降低耦合,不同api互不干扰2.使用注解方式,代

2017-09-09 23:10:07 425

原创 (Android网络3)okhttp

前言okhttp这一个网络通信框架是我第二个学习的网络框架,很多公司也喜欢使用这一个框架,我们公司也使用,所以呢,学习这一套框架是很必要的,因为它可以实现大部分的网络请求,如普通的GET,POST请求,上传,下载,加载图片等..让我们一起来学习吧!!1.okhttp介绍okhttp是一个轻量级的框架,由移动支付公司Square公司贡献,目的是用于替代HttpURLConnection和

2017-09-08 17:15:29 321

原创 (Android网络2)Volley

前言Volley这一个网络请求框架,是我第一个学习的的网络框架,距离现在已经有一段时间没有用到的,这一个框架,学习起来还是蛮快的,因为它使用起来简单,可以实现大部分的网络请求,非常适合入门新手学习!但是有一点需要注意的是,这一个框架不适合做数据的上传和下载,这一点非常重要,切记!1.Volley介绍Volley就是齐射,并发的意思,是Google I/0 2013上发布的网络通信库,用

2017-09-07 17:39:16 314

原创 (Android网络1)HttpURLConnection

1.HttpURLConnection介绍(引自百度)URLconnection是个抽象类,它有两个直接子类分别为HttpURLConnection和JarURLConnection,另外一个重要的类是URL,通常URL可以通过传给构造器一个String类型的参数来生成一个指定特定地址的URL实例,每个HttpURLConnection实例都可以生成单个请求,但是其他实例可以透明的共享连接到H

2017-09-06 15:47:52 312

原创 Android开发模式之-观察者模式

1.新建一个被观察者,这里可以被多个观察者观察class Person extends Observables下面的跟新建一个实体类差不多,只不过在set/get方法中的set添加方法setChanged()setChanged()方法设置改变了notifyObservers()方法通知观察者我改变了,并且会调用update()方法 2.新建一个观察者,这里可以建多

2017-06-27 22:08:00 209

原创 沉浸式状态栏

添加如下代码就能实现简单的沉浸式状态栏了.需要注意的是,只能实现5.0系统以上的,5.0以下就不是这么简单了,这里只是当5.0以下时,为全屏效果if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT){//透明状态栏           getWindow().addFlags(WindowManager.LayoutParams.F

2017-06-27 22:04:11 244

原创 解决RecyclerView代码复用问题

方法一. holder.setIsRecyclable(false);//取消复用,但会造成卡顿方法二.在Adapter下(就是添加一个标记集合,当是否点击,如果是就添加到这个集合中,否就移除,再判断一次当前是否在这个集合中,是就显示点击的状态,否就显示未点击状态)privateList Livelist=new ArrayList onBindViewHolder下playv

2017-06-27 22:00:14 11767

原创 Android记一次语音播报功能开发

首先先下载科大讯飞语音引擎包3.0http://mydata-1252536312.cosgz.myqcloud.com/rhymekdxf3.0.apk这个是我在腾讯对象存储的一个地址,可以下载下来然后安装转到手机的设置-辅助功能-tts设置成科大讯飞的语音引擎.添加如下代码:    private TextToSpeech tts;onCreate:       

2017-06-27 21:59:00 1178

原创 AndroidSQLite之记一次有就更新,没就插入

SQLiteDatabase db=getInstent(context);//初始化DB        db.beginTransaction();        for (Parent parent:parents){            db.execSQL("replace into "+Par_Table+"("+                    Par_Id+"

2017-06-27 21:57:31 1074

原创 获取原图宽高

BitmapFactory.Options bfo=newBitmapFactory.Options();                bfo.inJustDecodeBounds= true;//bitmap不存在内存中                bitmap =BitmapFactory.decodeFile("图片地址",bfo );                in

2017-06-27 18:23:31 289

原创 获取所有已安装的应用

1.获取packagemanager        PackageManager manager =getContext().getPackageManager();2.获取已安装的应用        List packageInfos =manager.getInstalledPackages(0);3.遍历packageinfo列表,获取详情ApplicationInfoa

2017-06-27 18:22:06 586

原创 Fragment切换

private void switchFragment(Fragment from, Fragment to) {         if (from == null && to == null){            return;        }        FragmentTransaction fragmentTransaction= fragManager.beg

2017-06-27 18:21:07 194

原创 Android studio更新到2.3后一直building

更新完2.3版本后,第一次新建一个项目,会出现一直building中原因是在下载gradle对应的版本,我们可以事先下载好对应所需的版本:把这个压缩包直接放在C:\Users\用户名\.gradle\wrapper\dists\gradle-3.3-all\55gk2rcmfc6p2dg9u9ohc3hw9这个下面,重新启动一下as,就大功告成了哈!

2017-06-27 18:19:43 210

原创 Handler&HandlerThread&Thread&AsyncTask详解

Handler防止内存泄漏:1.声明弱引用:static classmyHandler extends Handler {    WeakReferencemActivityReference;     myHandler(Activity activity) {        mActivityReference= newWeakReference(activity);

2017-06-27 18:17:06 241

原创 Android开源数据库框架之LitePal

简介:郭大神对SQLite操作的封装,十分好用1.添加依赖包:compile'org.litepal.android:core:1.3.2' 2.New一个Directory为assets目录新建一个litepal.xml文件添加如下内容:                                 3.配置LitepalAp

2017-06-27 18:08:42 319

原创 解决使用NestedScrollView嵌套RecyclerView滑动不流畅

解决使用NestedScrollView嵌套RecyclerView滑动不流畅LinearLayoutManager layoutManager = new LinearLayoutManager(this);layoutManager.setSmoothScrollbarEnabled(true);layoutManager.setAutoMeasureEnabled(true)

2017-06-27 18:07:13 2155

原创 Intent传递List<object>方法

首先让你的object实现Serializable接口然后在传递时强制转换为Serializable类型:传递时类似intent.putExtra("address",(Serializable) movicelist.getMulu());这样其中movicelist.getMulu()得到的是一个List类型的list获取时 List mulus = (List)

2017-06-27 18:00:45 249

原创 单个dex文件不能超过65535个方法解决方法

1.原因:谷歌规定单个dex文件中的方法不能超过65536限制2.处理:1.分包处理2.使用谷歌推荐的multidex@在app下的build.grade下添加依赖compile 'com.android.support:multidex:1.0.1'@确保编译版本大于21.1@在app下build.grade里的defaultConfig添加multi

2017-06-06 09:31:22 1167 2

原创 Android之蓝牙开发初编(发现蓝牙,配对蓝牙,连接蓝牙)

1.添加蓝牙权限:2.搜索蓝牙(使用BluetoochAdapter)BluetoothAdapter adapter=BluetoothAdapter.getDefaultAdapter();//获取蓝牙if(adapter==null){//判断蓝牙是否可用 ToastUtil.showToast(context,"该设备不支持蓝牙"); return;

2017-05-16 14:55:32 584

原创 Android控件之Recyclerview

RecyclerView简介:RecyclerView是Android L版本中新添加的一个用来取代ListView的SDK,它的灵活性与可替代性比listview更好。RecyclerView重要的几个类:Adapter:他继承的是RecyclerView.AdapterLayoutManager:确定摆放布局LinearLayoutManager//水平或者垂直布局

2017-03-29 09:10:10 263

原创 Android之炒鸡简单实现控件的阴影效果

1.首先,我们来上一张图看到上面没有,是不是很想实现这个阴影效果呀!2.原理一:直接使用android:elevation="2sp"就可以实现了,但是只能针对5.0系统以上的,那么,5.0以下的该这么实现呢,3.其实炒鸡简单:我们只需要在控件的外围添加一层FrameLayout并且设置一下属性<FrameLayout android:layout_wi

2017-03-23 16:39:29 493

原创 Android使用自定义对话框报错:The specified child already has a parent. You must call removeView() on the...

自定义对话框使用AlertDialog.Builder,在onCreate方法下show一次对话框,布局中有一个按钮,点击后再次show这个对话框出来,会出现标题上的异常,经过多次调试,终于找到的解决的方法,直接上代码..private AlertDialog ad;AlertDialog.Builder ab= new AlertDialog.Builder(thi

2017-03-02 10:26:09 1203

原创 类似QQ控件动态输入框

final PopupWindow pw=new PopupWindow(v, ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT,true);pw.setTouchable(true);pw.setTouchInterceptor(new View.OnTouchListener() { @O

2017-02-26 12:23:36 308

原创 开机不出现屏幕启动程序

参考百度得来的资料:http://bbs.csdn.net/topics/390282287直接在AndroidManifest.xml中的Activity添加:android:name="android.intent.category.HOME" />android:name="android.intent.category.DEFAULT" />android:name="an

2017-02-23 23:51:56 386

转载 Git

git使用的内容

2016-08-06 13:10:58 172

全国城市地区

该json文件可以直接放到资源文件中读取,包括香港,澳门地区,读取字段有name(名字)city(城市)area(地区)

2018-08-20

Android Studio的Flutter插件

使用说明:解压后可得到两个包,打开AS-File-Settings-Plugins-选择右下角ok左上面的Install plugin from disk...的按钮后弹出框中选中解压后的压缩包

2018-05-18

proguard(5.3.2-5.3.3)

该压缩包下有两个文件夹下分别是5.3.2和5.3.3经过处理的proguard.jar文件,详细请查看我的博客原文http://blog.csdn.net/a708959817/article/details/72874799

2018-01-08

Sqlite数据库修复工具RepairUR

用于sqlite数据库打开时出现database disk image is malformed异常,可使用该工具进行修复另其可打开!

2017-12-05

Android二级缓存

Android端开发中必不可少的工具类,开发过程中经常会用上,Android缓存有一级缓存LruCache内存缓存,二级缓存DisLruCache文件缓存,官方代码

2017-10-09

Mob短信简单集成类

mob平台下的短信验证功能的简单使用,只需要一行代码,就可以实现验证码短信的发送

2017-09-29

HttpURLConnection

HttpURLConnection的demo,里面有网络请求get post 上传文件,下载文件,介绍HttpURLConnection这个类整体流程是怎样使用的,方便初学者学习

2017-09-06

空空如也

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

TA关注的人

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