综合( 右侧选择分类 )
cnbzlj

Android 使用MediaPlayer播放assets或者raw目录的音频文件

不废话,需求:当接收到推送消息时,播放apk自带的声音,怎么办?1,首先接入极光推送,我前几篇文章已经讲了,不会的自己去看。在MyReceiver里的public void onReceive(Context context, Intent intent)判断消息类型,然后使用MediaPlayer播放assets或者raw目录的音频文件。if (JPushInterface.ACTION_NOT
252 人浏览
cnbzlj

Android 极光推送设置别名

不废话,需求:服务器想向某一个用户推送消息,怎么办?不会极光推送接入的看我之前写的如何接入极光推送的文章,// 调用 JPush 接口来设置别名。 JPushInterface.setAliasAndTags(getApplicationContext(), (Str
245 人浏览
cnbzlj

Android 通过腾讯WebService API获取 地址经纬度

不废话,需求:必须调用腾讯地图的API将地址转经纬度,怎么办? 1、申请地图使用Key(必须) 访问腾讯地图服务 : http://lbs.qq.com/qqmap_wx_jssdk/index.html;申请自己的Key; 记得开启webServiceAPI,不要输入任何限制条件。 请求URL 该请求为GET请求 https://apis.map.qq.com/ws/geoc
167 人浏览
cnbzlj

Android 通过腾讯WebService API获取 地址经纬度

不废话,需求:必须调用腾讯地图的API将地址转经纬度,怎么办? 1、申请地图使用Key(必须) 访问腾讯地图服务 : http://lbs.qq.com/qqmap_wx_jssdk/index.html;申请自己的Key; 记得开启webServiceAPI,不要输入任何限制条件。 请求URL 该请求为GET请求 https://apis.map.qq.com/ws/geoc
139 人浏览
cnbzlj

Android 对OkHttp的封装

不废话,需求:根据服务器API封装网络请求,怎么办? 简单封装okhttp的get,post,put,delete请求: PersistentCookieJar cookieJar = new PersistentCookieJar(new SetCookieCache(), new SharedPrefsCookiePersistor(getApplicationContext()));
157 人浏览
cnbzlj

android studio 快速删除无用的import包

今天,简单讲讲如何使用android studio 快速删除无用的import包。在开发过程中,随着项目的迭代,文件内部分import 可能早已经不用了,对于这种无用的 import,我们不可能一个一个文件的删除。这里记录个自动删除无用import的功能。一、方法/步骤1.启动Android Studio,打开项目,可以看到该java文件有多余的import,如图:2.点击菜单中的“Code”,如
286 人浏览
cnbzlj

android 读取assets文件夹下的文件资源

今天,简单讲讲如何读取assets文件夹下的文件。Android资源文件大致可以分为两种:第一种是res目录下存放的可编译的资源文件:这种资源文件系统会在R.Java里面自动生成该资源文件的ID,所以访问这种资源文件比较简单,通过R.XXX.ID即可;第二种是assets目录下存放的原生资源文件:因为系统在编译的时候不会编译assets下的资源文件,所以我们不能通过R.XXX.ID的方式访问它们。
203 人浏览
cnbzlj

android 获取文件大小

今天,简单讲讲android在读取文件时,如何获取文件大小。目前有两种实现方法,一种是使用File的length()方法;另外一种是使用FileInputStream的available()方法,当InputStream未进行read操作时,available()的大小应该是等于文件大小的。但是在处理大文件时,后者会发生问题。我们来看一下:首先选择一个文件并查看这个文件在windows中显示的大小
226 人浏览
cnbzlj

android 使用signingConfigs进行打包

今天,简单讲讲如何使用android studio指定证书打包。我们使用Android Studio 运行我们的app,无非两种模式:debug和release模式。debug模式debug模式使用一个默认的debug.keystore进行签名。这个默认签名(keystore)是不需要密码的,它的默认位置在C:\Users\<用户名>\.Android\debug.keystore,如
165 人浏览
cnbzlj

android 获取文件夹下的所有文件

在做工作时,我们经常需要遍历所有一个文件夹下的所有文件夹,发现其实也很简单。直接上代码/*读取输入的某个文件夹中所有的txt文件 * 显示文件名、文件内容 * */ import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.IOExce
167 人浏览
hangge

SpringBoot - 获取Get请求参数详解(附样例:非空、默认值、数组、对象)

利用 Spring Boot 来制作 Web 应用,就必定会涉及到前端与后台之间互相传递参数。下面演示 Controller 如何接收以 GET 方式传递过来的参数。一、参数直接在路径中(1)假设请求地址是如下这种 RESTful 风格,hangge 这个参数值直接放在路径里面:http://localhost:8080/hello/hangge(2)Controller 可以这么获取该参数:p
364 人浏览
hangge

SpringBoot - @ControllerAdvice的使用详解3(请求参数预处理 @InitBinder)

我们知道无论是 Get 请求还是 Post 请求,Controller 这边都可以定义一个实体类来接收这些参数。而 @ControllerAdvice 结合 @InitBinder 还能实现请求参数预处理,即将表单中的数据绑定到实体类上时进行一些额外处理。三、请求参数预处理(搭配 @InitBinder)1,问题描述 (1)假设我们有如下两个实体类 User 和 Book:public class
325 人浏览
hangge

SpringBoot - @ControllerAdvice的使用详解2(添加全局数据 @ModelAttribute)

二、添加全局数据(搭配 @ModelAttribute)1,设置全局数据(1)@ControllerAdvice 是一个全局数据处理组件,因此也可以在 @ControllerAdvice 中配置全局数据,使用 @ModelAttribute 注释进行配置。(1)这里我们在全局配置中添加了两个方法:message 方法:返回一个 String。userInfo 方法:返回一个 map。(2)这两个方
247 人浏览
hangge

SpringBoot - @ControllerAdvice的使用详解1(全局异常处理 @ExceptionHandler)

顾名思义,@ControllerAdvice 就是 @Controller 的增强版。@ControllerAdvice 主要用来处理全局数据,一般搭配 @ExceptionHandler、@ModelAttribute、@InitBinder 使用。下面分别进行介绍。一、全局异常处理(搭配 @ExceptionHandler)1,基本用法(1)@ControllerAdvice 最常见的使用场
231 人浏览
hangge

SpringBoot - 实现文件上传2(多文件上传、常用上传参数配置)

在前文中我介绍了 Spring Boot 项目如何实现单文件上传(点击查看),而多文件上传逻辑和单文件上传基本一致,下面通过样例进行演示。 二、多文件上传1,代码编写(1)首先在 static 目录中创建一个 upload.html 文件,内容如下: <!DOCTYPE html> <html lang="en"> <head> <meta c
256 人浏览
hangge

SpringBoot - 实现文件上传1(单文件上传、常用上传参数配置)

Spring Boot 对文件上传做了简化,基本做到了零配置,我们只需要在项目中添加 spring-boot-starter-web 依赖即可。一、单文件上传1,代码编写(1)首先在 static 目录中创建一个 upload.html 文件,内容如下:<!DOCTYPE html> <html lang="en"> <head> <meta
249 人浏览
hgweb

CSS - 项目常用的通用样式汇总3(网格布局框架:grd.css)

三、网格布局框架1,grd.css 介绍(1)Grd 是一款基于 Flexbox 的 CSS 网格系统框架。通过这个 CSS 网格框架,我们可以在页面中进行各种形式的网格布局。它默认采用和 Bootstrap 相同的 12 列布局。(2)Grd 是轻量级框架,代码如下:注意:我这里对其原始代码进行了改进,在原有的横向布局基础上,增加了纵向布局(column)的样式。.Grid { display:
157 人浏览
hgphp

Laravel - MySQL数据库的使用详解1(安装配置、基本用法)

一、数据库配置 (1)打开 config 文件夹下的 database.php 文件,修改 mysql 部分的连接配置。 'mysql' => [ 'driver' => 'mysql', //数据库的类型 'host' => env('DB_HOST', '127.0.0.1'), //数据库的位置 'port
319 人浏览
hgphp

Laravel - MySQL数据库的使用详解9(Eloquent ORM用法6:事件、订阅、观察者)

一、事件的监听与响应1,基本介绍(1)Eloquent 模型可以在模型生命周期中的各个时间点触发相应的事件: retrieved:从数据库中获取已存在模型时会触发该事件。 creating、created:当一个新模型被首次保存的时候,这两个事件会被触发。 updating、updated:当一个模型已经在数据库中存在并调用 save 方法,这两个事件会被触发。 saving、
354 人浏览
hgweb

Vue.js - 元素展开、收起动画效果组件(附:二级菜单的展开、收缩动画效果)

子菜单的展开、收缩功能在许多系统上都很常见,如果想要在打开收起时带有动画效果,过去常常会通过 jQuery 实现。而在 Vue 项目中,我们可以单独封装一个动画组件,方便使用。 1,效果图 点击一级菜单时,子菜单会从上往下逐渐展开。 再次点击一级菜单,子菜单又会从下往上收起。 2,创建动画组件(collapseTransition.js)组件代码如下,其内容是通
243 人浏览