自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jing__jie的博客

暂时专注于android

  • 博客(91)
  • 资源 (4)
  • 收藏
  • 关注

原创 使用Charles抓包及Android7.0以上证书文件安装到系统签名里面

工具:mac电脑 root手机一部安装:Charles可以到官网下载安装,但是没破解的时候,使用30分钟就会自动退出,且貌似只能使用30天Charles使用:1.首先在电脑中安装根证书,启动Charles, 在顶部找到Help, 如图操作,并信任2.配置SSL Proxying Settings。点击Proxy,点击SSL Proxying Settings,点击add添加,Host...

2019-10-24 10:37:01 10849 6

原创 Android 两个APP间跳转

通过intent实现不同APP间跳转通过了解APP间的跳转,加深对于intent的理解首先需要APP1和APP2,然后在APP1中activity中添加一个点击事件,希望跳转到APP2的activity中。APP1跳转代码:Intent intent = new Intent();//跳转其他APP的固定页面,需要APP的包名,activity的全路径//在要跳转的APP的activi...

2018-11-21 23:29:51 2627 1

原创 Android studio 3 添加ButterKnife

Android studio 3 添加ButterKnife当Android studio 升级到3.0以上的时候,原先的添加ButterKnife的方式就不行了。今天将新的添加方式记载一下,虽然有时效性,但是记录是最好的复习方式。ps:终于有时间将自己一段时间内遇到的问题或者学习到的东西记录分享了。项目gradle中的配置在buildscript中的dependencies中添加clas...

2018-11-11 21:02:07 634

原创 Android 关于APP启动时白(黑)屏解决办法

APP启动时,在点击APP到APP启动页加载出来会有一段时间的白屏或黑屏,很丑陋。。。其实,黑屏或者白屏这里并不是不正常,而是还没加载到布局文件,就已经显示了window窗口背景,黑屏白屏就是window窗口背景。 那window窗口背景在那里提供呢?在提供theme里面,如下提供的是白色背景,那就是启动时白屏一会儿的颜色设置。<!-- Application theme. --&...

2018-05-29 10:07:00 2350

原创 Android studio 中vcs commit update 小箭头突然消失

今天打开AS,突然发现代码提交小箭头不见了,通过以下操作恢复原先状况,具体为什么不知道。。 在plugins中搜索subversion integration 在后面的√去掉,apply,再勾上,apply。这时会要求restart,重启as,箭头显示出来了,和原先一样...

2018-05-18 11:31:30 1520 1

转载 AndroidStudio 创建gitignore忽略已经(追踪change)track的文件

问题 原本在新建工程时AS会自动生成.gitignore文件,忽略掉不需要进行track的文件,比如.idea文件夹、build文件夹等,但是我在一开始创建项目的时候没有意识到要忽略文件,把所有文件都track了,比如build文件夹,此时如果只添加.gitignore就不会生效。 即gitignore只对未track的文件生效,对已经track的文件不生效。对于已经track的文件,直接...

2018-05-18 11:23:24 617

原创 Android Glide白色图片压缩变绿的问题解决

图片变色的原因是因为图片压缩所致,一半是webp会出现这样的情况。 所以在使用Glide的缓存机制的时候,缓存原图片即可。Glide.with(a).load(url).diskCacheStrategy(DiskCacheStrategy.SOURCE).into(i); 关键点是.diskCacheStrategy(DiskCacheStrategy.SOURCE)就可以解决一部分问题了。上面

2017-10-14 10:06:33 1131

原创 Android edittext将软键盘的回车改为搜索

需求为:当用户在界面内点击输入框,弹出键盘,键盘右下角示意为“搜索”按钮,当用户输入内容后,点击搜索按钮将进行关键词搜索,当用户没有输入内容点击搜索按钮,将收起键盘,回到界面。具体实现如下:1.修改Editview属性:android:imeOptions="actionSearch" 在该Editview获得焦点的时候将“回车”键改为“搜索” android:singleLine="tr

2017-08-14 10:30:42 1253

原创 Android AndroidStudio 项目结构

Android模式的项目结构不是真实的项目结构,而是被Android studio转换了,适合快速开发项目 Project模式的项目结构才是真实的项目结构。 .gradle和.idea是AS自动生成的一些文件,不用手动编辑,不用理会 App是项目中的代码和资源文件都存放在这个文件夹,开发过程中一般就是在这个文件夹中进行。 Build主要包含编译过程中自动生成的文件。 Gradle中包含

2017-08-11 11:10:05 531

原创 Android Tablayout+ViewPager使用及遇到的问题

AndroidStudio添加gradle依赖//TabLayoutcompile 'com.android.support:support-v4:26.+'compile 'com.android.support:design:26.0.0-alpha1'//ViewPageandroid.support.v4.view.ViewPagerlayout布局<?xml version="1.

2017-08-11 11:04:54 2030

原创 Android RecyclerView关于item无法充满屏幕的问题

今天写了一个RecyclerView,写完后发现有item居然没有充满

2017-08-07 12:10:00 2399 2

原创 Android Butterknife view注入框架使用

前言 ButterKnife 简介ButterKnife是一个专注于Android系统的View注入框架,可以减少大量的findViewById以及setOnClickListener代码,可视化一键生成。项目github地址: https://github.com/JakeWharton/butterknifeButterKnife 优势1、强大的View绑定和Click事件处理功能,简化

2017-08-01 14:35:47 460

原创 Android BGABanner轮播图组件

BGABanner

2017-08-01 14:28:07 752

原创 Android Glide使用详解

导入 在项目中添加依赖非常简单:Glidedependencies { compile 'com.github.bumptech.glide:glide:3.5.2' compile 'com.android.support:support-v4:22.0.0' } 当然现在v4包已经是android项目标配了Glide的with方法不光接受Co

2017-07-24 14:00:23 625

原创 Android 动态申请权限(AndPermission)

AndPermission这个开源库名叫AndPermission:https://github.com/yanzhenjie/AndPermission,经过我的实践是完全解决了上述问题,推荐大家使用,有兴趣的朋友可以去star下。AndroidStudio使用方法,gradle一句话远程依赖compile 'com.yanzhenjie:permission:1.0.8'Or Maven:<de

2017-07-24 11:14:54 5707

原创 Android OKhttp3缓存处理

使用方法很简单:1.首先进行先进行设置:public static final MediaType MEDIA_TYPE_MARKDOWN = MediaType.parse("text/json; charset=utf-8");//设置MediaType private static final OkHttpClient client; private static f

2017-07-24 10:51:52 1986

原创 Android OKhttp3使用

首先说下OkHttp3是Java和Android都能用,Android还有一个著名网络库叫Volley,那个只有Android能用。导入自己到入jar包,别漏了okio:okhttp-3.3.0.jarokio-1.8.0.jarmaven方式:<dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</

2017-07-24 10:42:07 606

原创 Android camera相机开发拍照功能

在Android 5.0(SDK 21)中,Google使用Camera2替代了Camera接口。Camera2在接口和架构上做了巨大的变动,但是基于众所周知的原因,我们还必须基于 Android 4.+ 系统进行开发。本文介绍的是Camera接口开发及其使用方法,全面地学会Camera接口的开发流程。一、调用系统相机/其它App完成拍摄操作 如果你的App的需求只是调用摄像头拍照并拿到照片,老司

2017-07-13 10:27:29 4141 2

原创 Android 一些链接

1.Android视频框架–Vitamio http://blog.csdn.net/huaxun66/article/details/533670792.上海玄科三维展示 http://www.xuantech.cn/3.BGABanner轮播图第三方框架 https://github.com/bingoogolapple/BGABanner-Android...

2017-07-11 14:55:37 501

原创 Android Gson详解(四)

一、TypeAdapterTypeAdapter 是Gson自2.0(源码注释上说的是2.1)开始版本提供的一个抽象类,用于接管某种类型的序列化和反序列化过程,包含两个注要方法 write(JsonWriter,T) 和 read(JsonReader) 其它的方法都是final方法并最终调用这两个抽象方法。public abstract class TypeAdapter<T> { pub

2017-07-11 10:34:43 366

原创 Android Gson详解(三)

一、字段过滤的几种方法 1)基于@Expose注解@Expose提供了两个属性,且都有默认值,开发者可以根据需要设置不同的值。 使用方法: 简单说来就是需要导出的字段上加上@Expose 注解,不导出的字段不加。注意是不导出的不加。@Expose //@Expose(deserialize = true,serialize = true) //序列化和反序列化都都生效@Expose(dese

2017-07-11 10:21:05 579

原创 Android Gson详解(二)

一、Gson的流式反序列化1)自动方式Gson提供了fromJson()和toJson() 两个直接用于解析和生成的方法,前者实现反序列化,后者实现了序列化。同时每个方法都提供了重载方法,我常用的总共有5个。Gson.toJson(Object);Gson.fromJson(Reader,Class);Gson.fromJson(String,Class);Gson.fromJson(Read

2017-07-11 10:11:26 257

原创 Android GSON详解(一)

JSON (官网) 是一种文本形式的数据交换格式,它比XML更轻量、比二进制容易阅读和编写,调式也更加方便。其重要性不言而喻。解析和生成的方式很多。一、Gson的基本用法 Gson提供了fromJson() 和toJson() 两个直接用于解析和生成的方法,前者实现反序列化,后者实现了序列化。同时每个方法都提供了重载方法,常用的是下面几个 1)基本数据类型的解析Gson gson = new G

2017-07-11 10:01:58 822

原创 Android RxJava2的更新

前言: 在了解RxJava2.0的更新前,首先了解一个概念“背压”backpressure。 从字面意思理解就是:你在完成一件事的时候,后面一直在增加事情。在事情增加到你完成不了的时候就会崩溃。 在RxJava中,如果被观察者一直发送事件,观察者的事件处理速度跟不上事件发送速度,事件就会一直累积,直到内存奔溃。 网上有网友对背压(Backpressure)做一个明确的定义:背压是指在异步场景

2017-07-10 16:47:37 412

原创 Android RxJava初步认识

简单了解RxJava框架

2017-07-10 16:01:15 681

原创 Android MVP模式初步认识

一、MVP与MVCMVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写 MVP 全称:Model-View-Presenter MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负责显示。 MVP与MVC有

2017-07-10 12:15:22 258

原创 Android fastblur实现图片毛玻璃效果(模糊化)

一、实现 实现Blur效果主要有两种方式,一个是通过RenderScript来做,另一种是通过直接对像素点来进行算法处理。 RenderScript是API11之后才引入的,所以对版本有限制,而且RenderScript确实挺复杂的,虽然使用他的Blur功能很简单,但是要真正搞懂,不是一天两天的事。 本文主要介绍另一种算法来实现Blur,这个算法是目前市面上对Blur效果处理比较好的一种算法了

2017-07-10 11:00:40 999

原创 Android AS停留卡在building Gradle project

在Android Studio从2.3升级到3.3的时候,升级完毕后,会提示升级gradle。当升级了gradle后,重新打开Android Studio会发现,一直卡在building Gradle project。在网上查找原因,发现是因为Android Studio导入项目的时候,需要下载gradle包,主因为在国内防火墙屏蔽的原因,导致下载的速度蜗牛般慢,所以会一直卡停在这个界面。 解决办

2017-07-07 09:50:44 1456

原创 Android butterknife view注入框架

简介: ButterKnife是一个专注于Android系统的View注入框架,可以减少大量的findViewById以及setOnClickListener代码,可视化一键生成。GitHub地址: https://github.com/JakeWharton/butterknife优势: 1、强大的View绑定和Click事件处理功能,简化代码,提升开发效率 2、方便的处理Adapte

2017-07-07 09:34:44 362

原创 java 内存泄漏

关于内存泄漏这块,参考网络整理一下 一、什么是内存泄漏对象已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着,这时候就会发生内存泄漏。二、为什么会发生内存泄漏?A对象引用B对象,A对象的生命周期比B对象的生命周期长的多。当B对象没有被应用程序使用之后,A对象仍然在引用着B对象。这样,垃圾回收器就没办法将B对象从内存中移除,从而导致内存问题,因为如果A引用更多这样的对象,那将有更

2017-07-06 10:57:24 189

转载 RESTful架构 (二)API 设计指南

一、协议API与用户的通信协议,总是使用HTTPs协议。二、域名应该尽量将API部署在专用域名之下。https://api.example.com如果确定API很简单,不会有进一步扩展,可以考虑放在主域名下。https://example.org/api/三、版本(Versioning)应该将API的版本号放入URL。https://api.example.com/v1/另一种做法是,将版本号放在H

2017-07-05 16:47:05 206

转载 RESTful架构 (一)理解RESTful架构

一、起源 REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。 Fielding是一个非常重要的人,他是HTTP协议(1.0版和1.1版)的主要设计者、Apache服务器软件的作者之一、Apache基金会的第一任主席。 二、名称 Fielding将他对互联网软件的架构原则,定名为REST,即Representational State Transfer的

2017-07-05 16:29:12 360

转载 java 深入理解Java的接口和抽象类

对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲:  一.抽象类  二.接口  三.抽象类和接口的区别  若有不正之处,请多多谅解并欢迎批评指正,不甚感激。  此文

2017-07-05 15:31:55 231

原创 Android NDK开发

前面文章有介绍NDK开发,但具体的开发流程和方式还不了解。通过大神的讲解会对NDK开发有深入的了解。下面是具体的博客地址,今天先看一下,等后面有空,具体研究一下,并结合自己的感受再写个文章。NDK-JNI实战教程(一) 在Android Studio运行第一个NDK程序 http://blog.csdn.net/yanbober/article/details/45309049NDK-JNI实

2017-07-05 14:58:58 174

转载 Android SDK NDK JNI和so文件开发

1。SDK android SDK(AndroidSoftware Development Kit),即Android软件开发工具包,Android的SDK基于Java实现,这意味着基于Android SDK进行开发的第三方应用都必须使用Java语言。但这并不等同于“

2017-07-05 14:18:40 233

原创 Android SDK manager里面什么是必须下载的

最近重装Android环境,打开SDK manager去下载,发现以前就是随便下载的,在每个版本前面都打上勾让他下载就行,发现这种下载方式占时间不说,下载的好多东西没必要。在网上查看了一下,找到一张图说的很详细 剩下的就是根据你的需要去下载了。

2017-07-05 13:23:43 5091

原创 xcode 快速生成代码块

在xcode编写代码的时候,有很多都是类型相同的代码,如getter setter方法,如果对象的成员变量较多时,重复写getter setter方法就会很繁琐。但是xcode为我们提供了快速生成代码块的方法。 1. 选定要生成代码块的代码,并将代码拖入xcode右下角的{}选项卡内。 2. 双击添加的代码块,点击edit进行代码块的编辑 3. 对代码块进行编辑 需要编辑的有:名

2017-01-13 15:43:08 4476

原创 OC 封装的概念

mian.m////  main.m//  封装概念//  屏蔽内部实现的细节,仅仅对外提供方法和接口//  保证数据的安全性,将变化隔离//  一般情况下,不会对外暴露对象的成员变量,即成员变量都需要封装起来#import #import "Gun.h"int main(int argc,const char * a

2017-01-13 14:36:12 701

原创 xcode 快捷键总结

xcode 快捷键

2017-01-12 23:41:14 236

原创 OC 匿名对象概念及应用情景

////  main.m//  匿名对象#import #import "Person.h"/* 事物名称:person 属性:age name 方法:say(说出自己的名字,年龄) */int main(int argc,const char * argv[]) { 

2017-01-12 23:29:08 409

android FFT 获取音频的频率并实时显示

android FFT 获取音频的频率并实时显示 android FFT 获取音频的频率并实时显示 android FFT 获取音频的频率并实时显示

2016-06-15

图片压缩,原图片文件上传

通过http上传图片源文件。拍照显示源文件或返回的bitmap

2016-05-26

最简单的android录音小程序

最简单的android录音小程序,保存wav格式的音频文件在sd卡上

2016-05-26

android图表

2016-03-26

空空如也

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

TA关注的人

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