- 博客(37)
- 资源 (20)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_Google登录和Facebook登录并使用Firebase身份验证
一、接入摘要时间:2021-04-15版本:google 19.0.0,facebook 9.0.0,firebase 20.0.4语言:java内容:google登录和facebook登录,firebase验证二、接入流程google play 后台创建应用,配置应用信息,拿到参数 google-services.jsonfacebook 后台创建应用,配置应用信息,拿到参数 app_idfirebase 后台创建应用,关联 google 和 facebook客户端代码接入注
2021-04-28 12:24:09
4455
8
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_Google Play结算库(应用内支付)billing 3.0接入实战
接入摘要接入时间:2021-04-19接入版本:billing 3.0当前客户端接入版本对比aidl方式区别巨大,支付透传字段也被废弃,需要开发者做好订单和google订单关联;服务端支付验证也改了流程,开发者需要做更多的操作。关于google 支付新版本,了解到好多开发者还是用的老版本,为什么不更新?哈哈,因为太坑了。不过现在强制更新,给了具体的时间限制接入流程Google Play开发者后台创建应用(Google Play)开发者后台对应项目配置相关信息安卓端接入(结算库接入文档
2021-04-26 17:03:31
5446
12
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android手游SDK那点事(四)聚合打包
1、聚合SDK我们的SDK其实也可以称为聚合SDK,所谓聚合,就是CP游戏方接入聚合SDK,然后聚合SDK可以分发到各个渠道上,我们的SDK也有这个能力,相对渠道少一点2、怎么样分发渠道包
2020-05-19 21:19:43
2938
4
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_自定义控件之喜马拉雅6.6.21.3播放进度条
1、前言 Android开发正规群(324345614)有个群友在问怎么实现喜马拉雅6.6.21.3版本的播放进度条,网上搜了一圈并没有人写过类似的,群里其他人也没有人想帮他写一个,自告奋勇,开始撸一个。2、编写代码java为例子,kotlin的代码也有在项目中app_kotlin2.1、编写思路:绘制前测量背景条绘制缓冲条绘制播放进度框背景绘制播放进度文字绘制进度框计算移动过程的中心点触摸调整进度2.2、开始写代码了这里涉及到一点,进度框的宽度是比较长的。不能像那些小圆点进
2020-05-19 13:33:53
1282
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android手游SDK那点事(二)SDK项目结构设计(初版,废弃)
项目构建先上一个正题架构图:以KSDK为名称模拟项目构建KSDKCommon:公共模块,单独为一个project,因为其他sdk也会用到,分开好点,也可以作为module写在其他project,子模块module命名为ksdk_common,模块包含的功能:工具类,网络库等一些公共资源。KSDK:运营sdk核心,单独为一个project,子模块module命名为ksdk_lib,其功能包含...
2020-05-18 12:47:39
1257
10
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android使用FFmpeg播放视频(二)编写代码
2、播放视频2.1、新建Android项目笔者用的AndroidStudio 3.6.1版本,新建项目选Native C++,其他版本可能不太一样2.2、配置项目这里我们只需要armeabi-v7架构的FFmpeg,如需要其他架构,自行编译,将编译好的armv7/lib下的so复制到app/libs/armeabi-v7a,笔者一般都习惯把第三方so库放到module/libs下面,这里需要注意在module的gradle.build加入配置 sourceSets { main
2020-05-13 15:14:36
1108
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android使用FFmpeg开发播发器(一)编译FFmpeg
1、编译FFmpeg4.2.21.1、编译环境操作系统:linux,笔者用的是自己的服务器小水管centos7NDK版本:r21 https://developer.android.google.cn/ndk/downloads/FFmpeg版本:4.2.2 http://ffmpeg.org/download.html1.2、配置1.2.1、修改FFmpeg 配置文件下载完的FFmpeg解压后,进入解压后的目录即FFmpeg根目录,找到configure文件,替换部分内容,将SLIBNA
2020-05-11 17:16:52
791
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_自定义控件之两圆点之间来回移动加载进度
欢迎加入技术谈论群:714476794一、前言最近喜欢上自定义控件,喜欢实现一些简约有趣的控件,也好巩固下以前学得知识和不断的学习新知识,程序员嘛,活到老学到老。这篇文章接着上一篇文章:Android_自定义控件之水平圆点加载进度条,类似的实现方式,都是些比较简单的view绘制。二、实现先看下实现的效果吧:说下实现思路:圆点x轴会有个位移变化量,当位移达到圆点直径+圆点间距之和就回改变方向(改变方...
2017-06-17 20:01:18
951
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_自定义控件之水平圆点加载进度条
欢迎加入技术谈论群:714476794先来看看要实现的效果实现思路非常简单:当前变化的圆点先从最小半径变大到最大最大半径再变回最小半径的圆,然后再切换到下个圆点,同时颜色会先变浅在变会原来的颜色(可以理解为透明度变化),而且当前圆点的上上一个圆点颜色会不断变浅。大概就这样(可能我实现的效果和图片的有些出入)先看下实现效果:直接上代码:package com.kincai.testcustomvie...
2017-06-14 17:48:51
1963
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_性能优化之ViewPager加载成百上千高清大图oom解决方案
欢迎加入技术谈论群:714476794一、背景最近做项目需要用到选择图片上传,类似于微信、微博那样的图片选择器,ContentResolver读取本地图片资源并用RecyclerView+Glide加载图片显示就搞定列表的显示,这个没什么大问题,重点是,点击图片进入大图浏览,比如你相册有几百张图片,也就意味着在ViewPager中需要加载几百个view,况且手机拍出来的图片都是1-2千万左右像素的...
2016-12-28 16:51:37
16083
13
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_NDK图片压缩之Libjpeg库使用
欢迎加入技术谈论群:714476794一、前言Android图片压缩处理确实不如Ios,之前完全没听过libjpeg这个东西,工作闲余时间研究了了一天,总结下吧libjpeg的介绍可以参考文章:http://blog.csdn.net/talkxin/article/details/50696511二、编码前准备工作1、ndk环境搭建ndk工具包下载可以到http://www.androiddev...
2016-12-15 15:59:03
8191
9
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android_AndroidStudio多渠道打包及gradle配置签名信息
欢迎加入技术谈论群:714476794相信以前用eclipse开发Android项目的时候 在打包发布的时候 就有一个很蛋疼的事 因为项目需要统计每个应用商店下载量、在线数、手机型号等数据 就必须每个商店都打包一个版本 这就非常蛋疼了 非常耗时。没关系 今天我就带大家在Android studio配置多渠道打包 一次性打包几十个不同渠道的apk 省时省力。多渠道打包一、首先以友盟统计为例 在And...
2016-09-21 14:58:10
529
原创 Java多线程(二)线程池
前言这是笔者学习的笔记,想想还是写错博客分享出来线程池ThreadPool并发三大特性:原子性、可见性、有序性java保证原子性的类AtomicInteger四种线程池corePoolSize 线程池基本大小 阻塞队列满了的话 才会在corePoolSize < maximumPoolSize 下创建新的线程, 如果队列是无穷大的 那么maximumPoolSize永远也用不上,也就是说优先corePoolSize > 阻塞队列 > maximumPoolSize, 当阻塞队
2020-05-28 18:55:09
265
原创 Android_RxJava2.0封装异步任务RxAsyncTask
欢迎加入技术谈论群:714476794本来昨晚2016.12.31晚要发布的,没写好,今天,2017年第一天,早上就整理了下,把RxJava1.x给替换成了RxJava2.x版本,基本都需要改了,不懂的可以先去了解RxJava1.x 2.x。这篇文章主要是使用RxJava封装异步任务,用过AsyncTask的童鞋都清楚,AsyncTask的原理,调用顺序,线程切换等,废话不多说上代码:/** *...
2017-01-01 12:48:29
4460
1
原创 Android_2016大公司最新面试题(无答案)
欢迎加入技术谈论群:714476794Android基础 View的绘制流程;自定义View如何考虑机型适配;自定义View的事件分发机制;View和ViewGroup分别有哪些事件分发相关的回调方法;自定义View如何提供获取View属性的接口; Art和Dalvik对比;虚拟机原理,如何自己设计一个虚拟机(内存管理,类加载,双亲委派);JVM内存模型及类加载机制;内存对象的循环...
2016-12-13 11:42:14
1030
原创 Android_Mvp+DataBinding最佳实战
欢迎加入技术谈论群:714476794一、前言这篇文章适合了解了Mvp和DataBinding的童鞋,可以搜索相关文章查阅了解Mvp和DataBinding再来看这篇文章。二、背景以前开发Android就是拿起键盘就是干,就是传统的Mvc模式,毫无疑问,后期项目维护成本会很高,基本一个Activity都是成百上千行代码,及其恶心,View与Model耦合度强,所以使用Mvp可以使Model和Vie...
2016-12-12 11:27:05
1947
原创 Android_RxJava代替EventBus实现事件分发
欢迎加入技术谈论群:714476794一、背景众所周知,RxJava目前很火爆,既然RxJava是响应式的典型观察者模式体现,那么问题来了,我可不可以用RxJava实现页面事件的通知,进而实现代替EventBus。这当然是可以实现的,下面开撸:(一)、RxBus的创建最开始的写法:RxBus/** * Author KINCAI * . * description TODO * . * ...
2016-12-09 11:27:47
2042
原创 Android平台AES对称加密踩过的坑
前段时间对Android下sharepreference储存字符串做了个AES对称加密,废话不多说,直接上正确姿势的加密代码package com.android.androidframework.utils;import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.KeyGe
2016-10-26 17:35:02
967
转载 Android线程的正确使用姿势
欢迎加入技术谈论群:714476794线程是程序员进阶的一道重要门槛。对于移动开发者来说,“将耗时的任务放到子线程去执行,以保证UI线程的流畅性”是线程编程的第一金科玉律,但这条铁则往往也是UI线程不怎么流畅的主因。我们在督促自己更多的使用线程的同时,还需要时刻提醒自己怎么避免线程失控。除了了解各类开线程的API之外,更需要理解线程本身到底是个什么样的存在,并行是否真的高效?系统是怎么样去调度...
2016-08-11 10:54:06
495
原创 Android so库正确放置姿势
欢迎加入技术谈论群:714476794Android so库正确放置姿势:这是由于 ARM v7 是前向兼容 ARM v5 的为了减小 apk 体积,只保留 armeabi 和 armeabi-v7a 两个文件夹,并保证这两个文件夹中 so 数量一致对只提供 armeabi 版本的第三方 so,原样复制一份到 armeabi-v7a 文件夹(这是由于 ARM v7 是前向兼容 ARM v5 的...
2016-07-25 11:56:54
635
转载 Android内存泄漏的几种可能
欢迎加入技术谈论群:714476794Java是垃圾回收语言的一种,其优点是开发者无需特意管理内存分配,降低了应用由于局部故障(segmentation fault)导致崩溃,同时防止未释放的内存把堆栈(heap)挤爆的可能,所以写出来的代码更为安全。不幸的是,在Java中仍存在很多容易导致内存泄漏的逻辑可能(logical leak)。如果不小心,你的Android应用很容易浪费掉未释放的内...
2016-07-20 09:28:28
402
转载 Android_内存泄漏总结
欢迎加入技术谈论群:714476794摘要Android 内存管理的目的就是让我们在开发中怎么有效的避免我们的应用出现内存泄漏的问题。内存泄漏大家都不陌生了,简单粗俗的讲,就是该被释放的对象没有释放,一直被某个或某些实例所持有却不再被使用导致 GC 不能回收。最近自己阅读了大量相关的文档资料,打算做个 总结 沉淀下来跟大家一总结内存管理的目的就是让我们在开发中怎么有效的避免我们的应用出现内存泄...
2016-06-03 10:33:24
681
转载 android日常开发总结的技术经验60条
欢迎加入技术谈论群:714476794原文地址:http://www.vmatianyu.cn/summarization-of-technical-experience.html1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2. 数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系...
2016-03-07 12:44:12
504
原创 android:windowContentOverlay作用
欢迎加入技术谈论群:714476794相信每个app都需要一个闪屏页 就是一个开始页面 对于新手来说 可能就直接一个activity 弄个背景图片 ,细心地同学也许会发现 每次启动 应用程序的时候 一开始显示的不是那个设置的背景图片 而是白色或黑色背景 可能时间很短 这是为什么呢 。再看看其他市面上的应用都是一开始就是显示背景图片 而没有白色背景 研究了很久 其实 设置一下主题就行了 给a...
2015-12-14 15:54:49
30041
转载 Android屏幕适配方案
欢迎加入技术谈论群:7144767941、概述大家在Android开发时,肯定会觉得屏幕适配是个尤其痛苦的事,各种屏幕尺寸适配起来蛋疼无比。如果我们换个角度我们看下这个问题,不知道大家有没有了解过web前端开发,或者说大家对于网页都不陌生吧,其实适配的问题在web页面的设计中理论上也存在,为什么这么说呢?电脑的显示器的分辨率、包括手机分辨率,我敢说分辨率的种类远超过Android设备的分辨率,那么...
2015-07-27 13:37:20
536
原创 史上最完整的省市县/区数据 三级联动数据库
欢迎加入技术谈论群:714476794这个省市县数据总共有45051条数据 真的很完整的 需要的人可以去我的csdn下载区下http://download.csdn.net/detail/hqiong208/8896159省(截一部分图):市(截一部分图):我在数据库查看的 1803页 每页25条 觉得真实 first、second、third这三个字段才是三级联动查询时的重点数据下载:http:...
2015-07-13 20:57:33
3822
原创 Android Activity向右滑动返回
欢迎加入技术谈论群:714476794向右滑动返回,对于屏幕过大的手机来说,在单手操作时,是一个不错的用户体验,用户不必再费力的或者用另一个手去点击屏幕左上角的返回按钮或者,手机右下角的返回按钮,轻轻向右滑动屏幕即可返回上一页,这个功能如今大部分APP都已经支持啦,你的APP支持了吗?自己在网上百度了一些滑动返回的方法,有的是用的第三方控件如swipebackLayout但弊端过大如与自己...
2015-07-13 11:51:30
824
1
转载 Android 事件处理全面剖析
Android 事件处理机制说难也不难,说简单也不简单,为什么这么说呢?因为我相信大部分有了一定 Android 基础的同学,想要分析 Android 事件处理机制,都是可以分析出来了;但要灵活运用它却又觉得很吃力,而且往往需要查阅各种资料文档,才能真正把它运用起来。今天我带领大家对 Android 事件处理机制做一次全方位的分析,从而达到大家对 Android 事件处理有一个更深、更形象
2015-07-13 09:09:08
463
原创 MySql 启动服务后内存占用非常大解决办法
我这里用的mysql版本为5.6.17 装完发现占用四百多内存 怎么解决呢?很简单 找到mysql安装目录下my.ini文件 用记事本打开(如我的安装目录C:\wamp\bin\mysql\mysql5.6.17)打开后 拖到最后面 加上下面三行代码 保存 重启mysql服务即可performance_schema_max_table_instances=400table_
2015-07-13 08:33:57
1419
原创 Genymotion Unable to load VirtualBox engine Genymotion启动失败解决办法
Genymotion Unable to load VirtualBox engine我在之前安装Genymotion的时候是可以用的 但是后来我卸载了重装就不行了 怎么装都不行网上查了大量资料都是说:出现"Unable to load VirtualBox engine"视窗请至C:\Users\USER\AppData\Local\Genymobile,寻找一名为Genymot
2015-07-10 22:59:26
1158
原创 Android中scrollview和viewpage滑动冲突解决
欢迎加入技术谈论群:714476794在scrollview 嵌套viewpage的时候 左右滑动viewpage的时候就会觉得不流畅 解决办法只需要重写scrollview即可下面贴代码package com.kincai.store.view.custom;import android.content.Context;import android.util.AttributeSet;i...
2015-06-22 21:20:48
1851
转载 Android最佳性能实践(四)——布局优化技巧
欢迎加入技术谈论群:714476794在前面几篇文章当中,我们学习了如何通过合理管理内存,以及高性能编码技巧的方式来提升应用程序的性能。然而实际上界面布局也会对应用程序的性能产生比较大的影响,如果布局写得糟糕的话,那么程序加载UI的速度就会非常慢,从而造成不好的用户体验。那么本篇文章我们就来学习一下,如何通过优化布局来提供应用程序的性能。还没有看过前面前面一篇文章的朋友建议可以先去阅读 Andro...
2015-06-22 17:10:49
545
转载 Android最佳性能实践(三)——高性能编码优化
欢迎加入技术谈论群:714476794在前两篇文章当中,我们主要学习了Android内存方面的相关知识,包括如何合理地使用内存,以及当发生内存泄露时如何定位出问题的原因。那么关于内存的知识就讨论到这里,今天开始我们将学习一些性能编码优化的技巧。这里先事先提醒大家一句,本篇文章中讨论的编码优化技巧都是属于一些“微优化”,也就是说即使我们都按照本篇文章的技巧来优化代码,在性能方面也是看不出有什么显著的...
2015-06-22 17:09:48
507
转载 Android最佳性能实践(二)——分析内存的使用情况
欢迎加入技术谈论群:714476794由于Android是为移动设备开发的操作系统,我们在开发应用程序的时候应当始终把内存问题充分考虑在内。虽然Android系统拥有垃圾自动回收机制,但这并不意味着我们就可以完全忽略何时去分配或释放内存。即使我们全部按照上一篇文章中给出的编程建议来去编写程序,还是会很有可能出现内存泄露或其它类型的内存问题。所以,唯一能够解决问题的办法,就是尝试去分析应用程序的内存...
2015-06-22 17:08:13
389
转载 Android最佳性能实践(一)——合理管理内存
欢迎加入技术谈论群:714476794怎样才能写出高性能的应用程序,如何避免程序出现OOM,或者当程序内存占用过高的时候该怎么样去排查。确实,一个优秀的应用程序,不仅仅要功能完成得好,性能问题也应该处理得恰到好处。为此,我也是阅读了不少Android官方给出的高性能编程建议,那么从本篇文章开始,我就准备开始写一个全新系列的博文,来把这些建议进行整理和分析,帮助大家能够写出更加出色的应用程序。注意本...
2015-06-22 17:03:57
428
zengstudio 破解文件+注册码
2015-11-20
Android商城项目listview展示,真实项目抽取出来的,可以慢慢研究
2015-07-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人