自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)

原创 安卓开发人脸识别统计人脸数

最近项目需求是统计当前摄像头中的人脸个数,安卓有提供现成的Api,最终实现效果如上图。分析思路和步奏:主要使用到的类:SurfaceView、CameraManager、CameraDevice.StateCallback、CameraCaptureSession.StateCallback。1.通过SurfaceView展示预览区。2.在SurfaceView创建成功后通过CameraManager获取当前设备可用的摄像头。3.检测摄像头权限。4.通过CameraManager打开摄像头。.

2020-10-20 11:25:47 29

原创 统计步数,额度的圆弧自定义View

发现很多应用中都有类似于这种的自定义控件,自己撸了一个控件。1.先自定义属性来控制圆弧的带下和颜色以及中间颜色和字体大小等在res目录下的values文件夹中创建attrs.xml文件。<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="ArcStatisticsView"> <attr name="OuterLayerColor" f.

2020-10-10 17:31:01 28

原创 VideoView加自定义Controller播放视频

相信做安卓开发的一般都做过播放网络视频,大家一般都会使用VideoView去播放网络视频,还有一个Controller控制视频的暂停或者快进播放等。但是Controller的样式的话不能改就特别的丑。无法满足高端的UI体验。完成一个自定义播放控制器,以及简单的横竖屏切换功能。大概记录一下流程:1.自定义MyVideoView,为了解决有可能出现无法铺满整个屏幕而导致留白边的问题。public...

2020-04-29 15:37:40 210

原创 安卓使用Retrofit上传图片并且还要上传中文参数

最近项目中有用到上传图片至服务器的功能。需求是进行实名认证,需要上传姓名,身份证号,以及手持身份证正反面的功能。相信做安卓开发的大家都会使用Retrofit吧。如果上传单张图片时肯定就会使用下面这种方法:@Multipart@POST("live/realauth.do")Observable<BaseResultBean<Object>> realauth(@P...

2020-04-22 14:48:56 138

原创 安卓把两个位图覆盖合成为一个位图。

最近项目中需要用到扫描二维码功能,但是二维码是动态的 背景图也是动态的 所以需要两张图片组合起来提供给用户扫描,所以需要把两张位图组合成一张位图。public static Bitmap mergeBitmap(Bitmap backBitmap, Bitmap frontBitmap) { if (backBitmap == null || backBitmap.isRecycled...

2019-10-11 15:06:44 79

原创 项目中实现摇一摇功能

安卓手机监听手机是否摇动的功能,也就是类似于微信摇一摇功能.一看好像感觉挺厉害挺难得一个功能一样,实则不然,我们知道每个安卓手机都有传感器在里面,可以监听到手机的状态.我们说的摇一摇监听,该功能就需要用到传感器.用到比较核心的几个类:SensorEventListener:传感器的监听器.SensorManager:传感器的管理器.Sensor:传感器.我们都知道一般获取某个管理器都是c...

2019-02-28 15:33:10 191

原创 安卓开发中使用自定义的键盘

上篇博客说了一下自定义键盘的一种实现方式,该方式就是需要是edittext来唤醒键盘.由于我的输入框不是edittext而是类似于支付密码的那种方框格子的控件,所有用第一种方式不好实现该功能.该方式就是写两个自定义控件一个是省份的键盘一个是数字和字母的键盘.我实现方式是一个自定义控件继承自LinearLayout,然后通过LayoutInflater加载改布局,给每个按钮添加点击事件key_...

2019-02-28 10:48:41 156

原创 安卓开发中使用自定义的键盘

最近项目中有使用到自定义的键盘,就是那种特殊的键盘,是一款输入车牌的键盘,效果图如下:完成以上效果我想到有两种实现方式:第一种就是自定义键盘,主要用到的就是Keyboard和KeyboardView两个类.这种方式的话我觉得不好的一点就是需要edittext才能唤醒键盘.第二种就是自定义两个pupopwindow或者dialog都行,这种就是在popupwindow中把按钮当成一个一个bu...

2019-02-27 18:59:56 449

原创 百度地图上根据经纬度集合绘制行车轨迹

以下是素材:最近项目中用到了根据一段线路的经纬度集合来在地图上播放该车辆的行驶轨迹的需求.下面我就讲一下我实现步骤:效果图如下(因为制作gif图为了控制大小去掉了很多帧,不必在意这些细节,嘿嘿!!!):1.首先在界面上展示百度地图(这不是废话么)如果不知道怎么展示请看我之前的博客.2.初始化控件,把需要绘制在地图上的BitmapDescriptor准备好.也一个起点和终点的图标和灰色的...

2019-01-26 15:23:25 3783 2

原创 项目中对百度地图的点击获取经纬度

一般来说,项目中用到了百度地图的话,就是需要和地图进行交互操作的,先说说点击事件把。一.点击地图上某个点获取该点的经纬度:点击地图获取该位置的经纬度的话,一想想就知道应该使用类似于onClickListener的监听器吧。所以百度Api提供了一个BaiduMap.OnMapClickListener的监听器,首先先实现该接口@Override public void onMapCli...

2018-11-08 17:05:59 811 1

原创 安卓项目中展示百度地图

地图在很多App中都会用到,最近项目中用到了百度地图的功能,下面我就分享一下在App中加载百度地图的步骤。1.首先先登录百度地图开放平台,没有的就先注册一个百度账号。2.登录成功后点击开发文档中的Android SDK板块中的上面点击“立即使用”。3.点击创建应用,如下图所示:1.填写应用名称,2.应用类型选择Android SDK自己勾选需要用到的服务,3.填写包名:(注意是在build....

2018-11-01 18:22:27 477

原创 解决Scrollview中嵌套百度地图引发的滑动冲突

最近项目中有用到百度地图,一般来说地图都是放在一整个界面中展示的,但是我做的这款产品设计时就是,上面填写工程的有关信息,下面在地图上选点选择一个地点为工程的位置。布局如下图所示:(上面有一部分滑出去了,地图还有一部分未滑出来)由于上面的信息一个屏幕时填写不玩的,所有就用到了Scrollview中嵌套上MapView,大家都知道MapView是可以滑动的,但是嵌套在Scrollview中的话由于...

2018-09-26 14:33:38 692

原创 Android studio给项目工程配置指定的签名文件

项目只要打包生成Apk时,一定是需要签名文件的,当我们打debug包时只不过是默认的用了系统给的签名文件而已,如果我们想给自己的项目指定特定的签名文件改如何呢?1.使用快捷键 Ctrl+Shift+Alt+S 弹出以下界面: 2.按照步骤填入以上信息和引入正确的签名路劲: 3.点击ok。4.查看build.gradle中多了: 5.给相应的包配置对应的签名文件,debug...

2018-08-30 14:00:52 3162 1

原创 Android studio获取sha1的值

最近项目中要用到百度地图而申请百度地图的AK(秘钥)时需要用到项目的SHA1和项目包名生成安全码,现在安卓开发主要就是用的Android studio,以下就是Android studio获取项目的SHA1的值的步骤:1.打开cmd进入到自己的D:\jdk\bin jdk的bin目录下。(我的jdk的目录就是在D盘下) 2.输入以下命令 keytool -list -v -keystor...

2018-08-30 11:37:17 547

原创 retrofit中使用body标签传RequestBody

现在的Android开发者基本上都用过retrofit这个第三方网络请求库吧!!!网络请求中有get、post、delete和put等等请求方式。 现在我们需要用到post请求:@POST("exec")Observable<HttpResult> getSystemContent(@Body RequestBody body);可以注意到我们这里请求参数的标签用到...

2018-08-01 11:11:20 18489 1

原创 Android studio中报错Conflict with dependency 'com.android.support:support-annotations'

使用Android studio开发中出现Conflict with dependency’com.android.support:support-annotations’错误的时候只需要在build.gradle中加入configurations.all { resolutionStrategy.force 'com.android.support:support-annotat...

2018-07-27 10:33:05 341

原创 Android接入友盟推送

应用中当我们想去服务端获取数据时一般都是用的Http请求去主动获取服务器返回来的数据进行展示。但是,当服务器有新的数据需要主动告诉我们的手机应用时,该肿么办呢?这就需要用到推送的功能了。现在推送有好多家第三方的,我在这里就讲讲给我们的应用接入友盟第三方推送的步骤吧。1.先去友盟推送以应用包名创建应用http://message.umeng.com2.在友盟后台获取到通过包名创建的应用对...

2018-07-13 18:06:14 2354 1

原创 接入友盟推送遇到的com.ut.device.UTDevice问题

最近项目中有用到友盟推送的功能,完全按照官方接入sdk出现了以下问题: 整了我一天发现是友盟推送有用到utdid这个包implementation 'com.umeng.sdk:utdid:1.1.5.3'查阅资料好像发现这是阿里的一个双向认证的东西(具体我也不太清楚是啥)因为我之前在项目中接入过支付宝支付功能所以支付宝的jar包中也有utdid的这个包,而且还是老版本所以发生了...

2018-07-03 18:06:23 2249

原创 自定义TabLayout

最近项目中有用到一个TabLayout,如上图效果。先说说需求。1.Tab的个数是动态变化的。 2.4个Tab占满一个屏幕,多余部分往右滑动过来。 3.点击后右侧小图标变化样式。思路: 1.布局的话使用LinearLayout布局,放在HorizontalScrollView中。这样就实现了滚动效果。2.获取到屏幕的宽度除以4设置成里面每个Tab的的宽度。3.每个Ta...

2018-05-02 11:18:32 128 1

原创 android使用ZXing实现二维码扫描功能

二维码现在在我们生活中基本上每天都会用到,所以现阶段开发的App很多都使用到了二维码扫描功能。说起二维码扫描基本上大家都是用的ZXing谷歌官方提供的库。以下我就讲讲在项目中如何介入二维码扫描识别功能:1.在项目的build.gradle中加入依赖库:compile 'com.journeyapps:zxing-android-embedded:3.2.0@aar'//二维码扫描...

2018-04-28 15:32:06 460

原创 使用友盟+实现第三方登录

最近项目中有使用到友盟第三方登录:下面我就把使用友盟第三方登录的步骤分享给大家:1.第一步:去友盟+官网创建应用,申请获取到appkey。有账号的话直接登录创建即可,无账号注册一个创建应用。官网链接:https://www.umeng.com/2.第二步:确定可以使用第三方登录的平台。(我这里实现QQ、微信和新浪微博)。3.第三步:去腾讯开放平台申请APP ID 和 APP K...

2018-04-02 17:38:52 3559 4

原创 activity的onNewIntent()方法执行时机

当我们在activity的启动模式中设置为栈内唯一时,也就是android:launchMode=”singleTask”或android:launchMode=”signleTop”时,会用到这个方法。比如说在一个应用中A activity 跳转至 B activity 在跳转至 C activity 然后C做了一定的操作之后再返回A 界面。这样在A activity的启动模式设置为sing...

2018-03-09 09:40:08 3416

原创 TextView中加横线

最近公司在做一个商城类应用,使用过商城类型App的都知道,有时候一些产品在搞活动时,会有特价情况,这样的话会把原价放在优惠价的下面,在原价的字体中画一根横线。要实现这样的效果非常简单:public class DrawLineTextView extends TextView { public DrawLineTextView(Context context) { ...

2018-03-07 19:58:53 1865

原创 ConcurrentModificationException异常出现原因以及解决方法

今天在开发过程中遇到一个异常叫ConcurrentModificationException,这个异常用我的白话翻译是叫同时修改异常。这个异常是怎么出现的呢,先看看已下的代码:@Override public void onGetModel(List modelList) { if (modelList != null) { this.i

2018-01-31 19:32:47 22450 3

原创 自定义柱状折线图

自定义柱状折线图

2018-01-19 20:49:59 281 1

原创 安卓工程配置bugly

安卓工程配置bugly

2017-12-07 18:11:12 278 1

原创 安卓实现录音机的录音功能

安卓实现录音机的录音功能

2017-11-01 18:09:50 3624 2

原创 AndroidStudio创建工程,添加svn忽略文件以及关联上SVN

1.使用Android Studio创建项目并且命名: 2.添加忽略文件: 3.添加至SVN:4.断开SVN连接:

2017-10-17 16:43:30 579

原创 popupwindow点击其它位置和点击back键不消失,以及和dialog的区别。

popupwindow点击其它位置和点击back键不消失,以及和dialog的区别。

2017-09-18 20:33:17 950

原创 安卓中关于属性动画的复合使用

安卓中动画的组合使用,属性动画和帧动画的使用。

2017-09-15 15:17:16 342

原创 安卓开发帧动画使用

安卓中有时候需要使用到帧动画,比如进度条等等。先在drawable文件夹中建立一个动画文件 “文件名”.xml,其根节点是animation-list android:oneshot=”false”还需要添加上该属性 取值为boolean值,意思是播放一次还是一直重复。 然后建立多子节点: drawable属性为资源图,duration属性为该图显示的时长(毫秒值)。<?xml version

2017-09-04 10:51:53 328

原创 Butter Knife框架的基本使用

Butter Knife框架的基本使用

2017-08-31 19:04:10 245

原创 关于android:layout_weight属性你不知道的事

关于android:layout_weight属性你不知道的事

2017-08-21 10:34:24 224

原创 给GridView或ListView添加一个固定按钮(类似于微信群聊邀请好友按钮)

给GridView添加一个固定的尾部按钮。

2017-08-16 20:01:51 397

原创 安卓中使用SharedPreferences保存javaBean类对象

安卓中使用SharedPreferences保存java对象

2017-08-11 18:47:04 2750 1

原创 把自己的应用程序push至system/app下,把自己的app改成系统级别的app

把应用push至system/app中

2017-07-31 17:34:22 7261 3

原创 安卓中杀进程的方法

上一篇博客刚说到杀进程,会发现有的使用killBackgroundProcesses()方法是杀不死的。在这样的情况下就需要用到forceStopPackage()方法强制杀掉进程。各位小伙伴会发现使用mActivityManager.forceStopPackage()时该方法没有的情况。下面看看 源码:/** * Have the system perform a force stop

2017-07-29 15:33:02 812

原创 获取最近运行应用方法和杀进程的方法

最近公司的项目有个需求就是获取最近手机正在运行的进程,以及杀掉进程。就是类似于安卓手机中的长按home键的效果。 先说说获取最近手机正在运行的进程方法: 直接上代码,代码中有注释:appbeans = new ArrayList<>(); //先通过系统服务获取到一个ActivityManager管理对象 ActivityManager am = (Activit

2017-07-28 11:36:28 420 1

原创 安卓中使用反射以及getDeclaredXXX()和getXXX()方法的区别

安卓中的反射以及getMethod()和getDeclaredMethod()的区别

2017-07-19 13:59:14 530

原创 App首页使用多个Fragment和RadioGroup连动

App首页使用多个Fragment配合底部RadiogGoup。

2017-07-13 00:24:43 416 1

空空如也

空空如也

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