自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天镜baobao的博客

闲着无事便写写博客

  • 博客(21)
  • 资源 (17)
  • 收藏
  • 关注

原创 【ADEasy】一套全平台的广告聚合SDK快速集成框架

中文 https://github.com/TJHello/ADEasy/blob/master/README.mdEnglish https://github.com/TJHello/ADEasy/blob/master/README-EN.mdADEasy(测试版)-集成说明一套全广告平台的快速集成框架。ADEasy使用了插件自动集成技术,只需要简单控制各个平台的开关,就能实现各平台...

2020-04-09 17:53:42 5485 4

原创 最新google play内购(com.android.billingclient) 教程 代码 封装 使用方法

对于google play内购,网上已经有很多教程了,但大部分都是旧的V3版。这次我用的是最新的com.android.billingclient:billing:1.0,其优点是不需要key了,不需要IInAppBillingService.aidl了,不需要那一大堆Utils了。GoogleBillingUtilV0.0.3下载(V3API,适合Eclipse) 码云项目GoogleBillin

2019-07-25 11:36:01 15376 35

原创 Android快速开发框架TJFramework-介绍-示例

码云地址:https://gitee.com/tjbaobao/TJFramework Github地址:https://github.com/TJHello/TJFramework一、介绍该框架是16年的时候开始写的。当时大二出来工作,第一次接触企业的框架,一个在我看来很差的框架,其实说是框架,事实只是一些工具的集合,和一些简单的封装。然后,作为用这套框架来开发的程序员的我来说,这...

2018-09-11 18:23:07 564

原创 Lottie动画库最新版使用方法详解 教程 示例

Lottie是一个可以播放由AE打包的json动画文件的开源库,使用它,你可以简单实现播放利用AE制作的动画。

2017-06-27 18:59:28 8767

原创 Android实现MP4边下边播(边缓存边播放、在线播放)原理与代码

一种通过切割mp4实现视频在线播放、实现mp4边下边播的方法。

2016-12-11 16:41:09 24370 20

原创 我做了个思考,用View来代替Activity会不会更好呢?

我做了个思考,用View来代替Activity会不会更好呢?

2024-03-22 18:29:27 164

原创 gradle使用笔记

gradle使用笔记,持续更新中

2023-02-28 10:47:02 110

原创 Android实现MP4边下边播(边缓存边播放、在线播放)原理与代码

对于这套方法我已经封装成库,可以直接下载使用。 MP4Info1.0.2.jar下载配套的视频播放器终于出来了,可自定义性很大。 MP4Player1.0.1.jarDemo下载刚开始实现这个的时候,第一下想到的是,先将MP4文件单纯的从字节的层次分为若干个文件,然后播放的时候,不断从服务器一边下载,一边追加到一个源文件里面,最后直接播放这个源文件就可以了。如图:

2022-03-21 18:41:24 3691

原创 【BillingEasy】全新内购聚合,支持华为内购与谷歌内购(开源项目)

gitee仓库:https://gitee.com/TJHello/BillingEasygithub仓库:https://github.com/TJHello/BillingEasyBillingEasy-0.1.1-t04QQ交流群(425219113)使用该库请遵循Apache License2.0协议,莫要寒了广大开源者的心。一款全新设计的内购聚合,同时支持华为内购与谷歌内购。使用了模块化技术,可以实现按需切换平台,而不残留任何平台代码。重新设计了所有接口,去除了业务相关逻辑,还给

2021-07-18 19:18:51 574

原创 Kotlin 语法糖转C#笔记(更新中)

1、字符串拼接kotlin"我今天遇到了$name,她答应做我$relations了"C#$"我今天遇到了{name},她答应做我{relations}了"2、初始化对象的同时赋值变量kotlinObj().apply{ xxx = "" aaa = 1}C#new Obj{ xxx = "", aaa = 1};3、可为空kotlinfun function1(): Obj? {}var obj : Obj ?= nullC#Obj? functi

2020-08-16 12:24:54 345

原创 【ABTest】一款简单易用的ABTest开源库

Github : https://github.com/TJHello/ABTest-UMABTest-UM一款简单易用的ABTest工具-基于友盟打点使用步骤Step1 接入自动集成插件到build.gradle(project)buildscript { repositories { ... maven { url 'https://raw...

2020-03-19 17:36:45 3465

原创 自己做个Android框架-Dialog

代码地址:TJFramework - -TJDialog.java文章索引List item序言任何封装都不是一蹴而就的,需要有一定的时间和经验的积累,去挖掘深层次的需求。我看过很多人的封装,有一种风格是在一个大的封装里集成了各种各样的弹窗,是或否弹窗-进度条弹窗-加载弹窗-等等等,但后来我发现,面对日益多变的设计需求,任何指定UI的封装都是活不不长久的,所以我从一开始做,就是打算让...

2019-04-18 17:18:50 516

原创 立flag!一日不会JNI,终生不结此博文-20190121

-20190121 阴天

2019-01-21 17:35:33 151

原创 Android Java 阿里云OSS授权访问、访问控制和Accesskeys 示例代码

一、概述阿里云OSS的授权访问主要分为两大步骤服务端传入endpoint、accessKeyId和accessKeySecret等参数利用SDK获取链接。客户端向服务端请求链接,然后自行处理(当然也可以使用SDK来直接下载文件)那么现在有几个问题。a)endpoint、accessKeyId和accessKeySecret分别在哪里获取?字段获取示例endpo...

2018-10-09 17:29:21 5084

原创 因为忽略Android Studio升级而导致之后无法再次检测升级的解决方法

很多时候Android Studio都是跳出各种升级的提示,但因为我们考虑到稳定性、吗麻烦性等等因素,都不会马上去升级,甚至会因为 “Remind Me Later"太频繁,而选择了"Ignore This Update”。但这样之后,你要是再想进行升级,就不是简单的再次 Help-Check for Updates… 就行的了。第一步第二步将里面的内容删除,再次点击Check Now就...

2018-10-08 10:19:04 1184

原创 Kotlin学习笔记

1、变量常量声明与符号变量常量声明//val 代表常量不可变的,var代表变量,除非声明为lateinit,否则都需要赋值,如果不能马上赋值,需要添加?=nullprivate val a = 1 //声明一个私有的Int常量private var b = 1 //声明一个私有的Int变量private val c : Int = 1 //相当于private val a = 1pri...

2018-09-26 16:33:18 221

原创 android疑难杂症

Error:com.android.builder.dexing.DexArchiveBuilderException: Failed to process ****jar 可能是这个jar支持了JAVA8而你的项目不支持。 解决方法:在app-build.gradle-android{}标签内增加 compileOptions { sourceCompati...

2018-03-02 17:05:37 459

原创 Lottie动画动态定位以及缩放

有时候我们需要用Lottie来播放一些,相对与某些位置的非固定动画,这时候就需要给他进行定位缩放了,请看我的方法。刚开始的时候,我觉得这是一件非常简单的事情,不就是确定一个点,然后不同设备根据这个点的比例来缩放和移动lottie组件就可以了。但在实际使用中,我发现lottie组件的大小并不是固定的其本身的px大小,而是会根据不同设备来自动伸缩的,具体怎么伸缩的我不知道。lottie组件使用set

2017-07-21 17:08:59 12614

原创 android 列表实现下拉刷新,上拉加载更多

本来想要找一个支持下拉刷新和上拉加载更多的ListView代码,但没找到满意的,大多要导入一些包,很是受不了,而且也有很多问题。于是干脆自己写,一个类搞定,无需任何包。这里我用的是GridView,GridView和ListView一样用法,只是前者不支持设置头部和尾部,但这里可简单移植成ListView。 基本原理看图。 这整一个是一个复合组件,包含头部的下拉刷新部分,中间的GridVie

2016-10-26 15:17:42 1999

原创 java模拟用户登录(实现自动签到)-aspx

刚来公司上班,发现需要自己每天都登录内部网进行签到,然后因为我健忘和怕麻烦,所以就有了它。首先,我向你们推荐一款抓包软件,​Fiddler Web Debugger,可以用来抓取浏览器与服务器之间传输的数据,方便模拟。看图,点击软件左边的链接可以看到与其相关的数据。有了这些数据,我们就可以原样不动的发给服务器,达到了模拟的效果。其中主要是一些网站的身份验证机制,我在这一方面还是一天经验的小白而已,有

2016-09-27 09:32:02 9263 6

原创 Android新浪微博授权提示:文件不存在 C8998 的终极解决方法

直入主题,在做新浪微博分享功能的时候遇到了如图的问题,在授权页面无法加载应用信息然后Toast 文件不存在 C8998d。解决方法大概和网上的一样,这里我作细节描述。一、平台上的包名和签名与应用的不相同别说你的肯定不是这个原因,我的就是签名最中间错了一个字母,所以请复制粘贴你的包名,签名到新浪开放平台,并检查是否包含空格。二、平台上的回调地址与应用内调用的不同首先,如图

2016-08-01 16:25:37 23472

gradle-5.4.1-all资源与使用方法.7z

文件比较大,建议使用迅雷下载,能增加下载成功率。 官方下载地址:https://services.gradle.org/distributions/ 使用方法: (记得先解压出gradle-5.4.1-all.zip) 1、用记事本,修改项目目录\gradle\wrapper下的,gradle-wrapper.properties文件。将其中的distributionUrl后面的链接改为https\://services.gradle.org/distributions/gradle-x.x-all.zip。 2、解压出gradle-5.4.1-all.zip,复制到以下位置C:\Users\你的用户名\.gradle\wrapper\dists\gradle-x.x-all\随机字符串xxx\下。 3、重新打开android studio即可。 注意 : 如果Android Studio在启动过程中缺少gradle文件,是会一直卡主的(除非你能在线下载gradle),这时候请直接在任务管理器中强制关闭,然后按照上面的方法做好再次启动。

2019-08-22

com.android.billingclient_billing1.2@aar

注意!注意!注意!:需要导入jar然后将AndroidManifest.xml的权限和Activity声明整合到自己项目里面就行了。 从com.android.billingclientbilling1.2.aar中提取出来的资源,里面包括jar和AndroidManifest.xml,方便eclipse的用户使用

2019-03-07

com.android.billingclientbilling1.0

从com.android.billingclientbilling1.0.aar中提取出来的资源,里面包括jar和AndroidManifest.xml,方便eclipse的用户使用,只需要导入jar然后将AndroidManifest.xml的权限和Activity声明整合到自己项目里面就行了。

2018-08-08

gradle-4.6-all以及使用教程

文件比较大,建议使用迅雷下载,能增加下载成功率。 官方下载地址:https://services.gradle.org/distributions/ 使用方法: 1、用记事本,修改项目目录\gradle\wrapper下的,gradle-wrapper.properties文件。将其中的distributionUrl后面的链接改为https\://services.gradle.org/distributions/gradle-x.x-all.zip。 2、将该文件复制到以下位置C:\Users\你的用户名\.gradle\wrapper\dists\gradle-x.x-all\随机字符串\下。 3、重新打开android studio即可。 注意: 如果Android Studio在启动过程中缺少gradle文件,是会一直卡主的(除非你能在线下载gradle),这时候请直接在任务管理器中强制关闭,然后按照上面的方法做好再次启动。

2018-03-31

gradle-4.4-all以及使用教程

文件比较大,建议使用迅雷下载,能增加下载成功率。 官方下载地址:https://services.gradle.org/distributions/ 文件名称:gradle-x.x-all.zip 使用方法: 1、用记事本,修改项目目录\gradle\wrapper下的,gradle-wrapper.properties文件。将其中的distributionUrl后面的链接改为https\://services.gradle.org/distributions/gradle-x.x-all.zip。 2、将该文件复制到以下位置C:\Users\你的用户名\.gradle\wrapper\dists\gradle-x.x-all\随机字符串\下。 3、重新打开android studio即可。 注意: 如果Android Studio在启动过程中缺少gradle文件,是会一直卡主的(除非你能在线下载gradle),这时候请直接在任务管理器中强制关闭,然后按照上面的方法做好再次启动。

2018-03-31

Google play billing(Google play 内支付) 代码封装 api V1.1.3

使用了google新版的内购API,com.android.billingclient:billing:1.0,使用方法更加简单了。 使用该封装,只需要简单的一步就能初始化,里面的接口功能齐全,具备完整的成功、失败、错误回调。里面包含详细教程,有些坑可以看我博客。 http://blog.csdn.net/u013640004/article/details/78257536 更新日志: *V1.1.3 2017/12.19 *修复-服务启动失败时导致的空指针错误。 * * V1.1.2 2017/12/18 * 修复-修复内购未被消耗的BUG。 * 增加-每次启动都获取一次历史内购订单,并且全部消耗。 * 增加-可以通过设置isAutoConsumeAsync来确定内购是否每次自动消耗。 * 增加-将consumeAsync改为public,你可以手动调用消耗。 * * V1.1.1 2017/11/2 * 升级-内购API版本为google最新版本。compile 'com.android.billingclient:billing:1.0' * 特性-不需要key了,不需要IInAppBillingService.aidl了,不需要那一大堆Utils了,创建新实例的时候必须要传入购买回调接口。

2017-12-19

Google play billing(Google play 内支付) 代码封装 api V1.1.2

使用了google新版的内购API,com.android.billingclient:billing:1.0,使用方法更加简单了。 使用该封装,只需要简单的一步就能初始化,里面的接口功能齐全,具备完整的成功、失败、错误回调。里面包含详细教程,有些坑可以看我博客。 http://blog.csdn.net/u013640004/article/details/78257536 更新日志: * V1.1.2 2017/12/18 * 修复-修复内购未被消耗的BUG。 * 增加-每次启动都获取一次历史内购订单,并且全部消耗。 * 增加-可以通过设置isAutoConsumeAsync来确定内购是否每次自动消耗。 * 增加-将consumeAsync改为public,你可以手动调用消耗。 * * V1.1.1 2017/11/2 * 升级-内购API版本为google最新版本。compile 'com.android.billingclient:billing:1.0' * 特性-不需要key了,不需要IInAppBillingService.aidl了,不需要那一大堆Utils了,创建新实例的时候必须要传入购买回调接口。

2017-12-18

gradle-3.3-all以及使用教程

Android Studio的gradle-3.3-all。 使用方法。 1、修改,项目目录\gradle\wrapper下的,gradle-wrapper.properties文件,中的distributionUrl为https\://services.gradle.org/distributions/gradle-3.3-all.zip。 2、将该gradle-3.3-all.zip文件复制到一下位置C:\Users\你的用户名\.gradle\wrapper\dists\gradle-3.3-all\随机字符串\下,重新打开android studio即可。

2017-11-21

gradle-4.3-all.zip

Android Studio的最新gradle,如果新建项目或者想要提前试用可以首先下载。使用方法。1、修改,项目目录\gradle\wrapper下的,gradle-wrapper.properties文件,中的distributionUrl为https\://services.gradle.org/distributions/gradle-4.3-all.zip。 2、将该文件复制到一下位置C :\Users\你的用户名\.gradle\wrapper\dists\gradle-4.3-all\随机字符串

2017-11-01

gradle-4.1-all 最新版 包含使用方法

Android Studio的最新gradle,如果新建项目或者想要提前试用可以首先下载。使用方法。1、修改,项目目录\gradle\wrapper下的,gradle-wrapper.properties文件,中的distributionUrl为https\://services.gradle.org/distributions/gradle-4.1-all.zip。 2、将该文件复制到一下位置C:\Users\你的用户名\.gradle\wrapper\dists\gradle-4.1-all\随机字符串

2017-11-01

Android Google play billing(Google play 内支付) 代码封装V1.0.3

个人精品资源来的,公司也在用,已经是比较稳定的了。 里面已经带有对应版本的API和Util工具类,所以下载直接就能使用。 这里使用的是v3版本的API,如果想要使用最新版本的 API请自行按照新的API函数稍微修改一下代码参数就行了。 使用该封装,只需要简单的4步就能调起支付,参数等配置、new 一下,回调,注销。 里面的接口功能齐全,具备完整的成功、失败、错误回调。如果需要详细教程,可以看我博客。http://blog.csdn.net/u013640004/article/details/78257536 1.0.3更新日志:增加对订阅功能的支持。

2017-10-27

mp4player1.0.1.jar(android mp4在线播放器)示例项目

这是mp4player.jar的示例项目,mp4player.jar对videoview进行了封装,提供众多接口方法。通过该库,可以简单实现自己的自定义UI的mp4在线播放器。 功能:自定义UI,提供缓冲机制,可以配合mp4info.jar实现MP4的在线播放功能。 说明:使用方法很简单,示例里有。这是初版,后面会不断升级。有问题可以留言,我及时解决。 具体原理见我博客:http://blog.csdn.net/u013640004/article/details/53573864

2017-08-20

MP4Info1.0.2.jar(实现MP4边下边播的jar库)

原理请看我的博客:http://blog.csdn.net/u013640004/article/details/53573864,不是你想要的就别下载了。 简介: 这套方案可以完美实现了MP4文件,在http协议中的边下边播的本地功能,分为两部分(切割、合并)。使用者将视频用该库切割后上传到服务器,然后从服务器依次边下载边用该库进行合并即可播放,播放器需要进行一定的自定义,我做了一个,但原来的逻辑并不通用,现在已经在赶工些了,具体请关注我上面写的博客。 附加功能: 可添加自定义数据,例如可以在切割视频的时候,给视频添加标题,作者等信息,反正可以携带自定义数据,什么数据你们说了算(也不知道这功能有没有用,或者吧。 使用方法: 调用比较直观简单,没有几个方法,我也懒得写API文档,所以写了一个DEMO,里面涉及了一整套流程的方法,可以参考。 最后: 第一次封装库,没啥经验,所以这个版本只是第一版,以后会不断改进升级的,谢谢,另外降低了一点下载积分,希望能有更多的朋友使用。 版本更新:修复一个必然会出现的BUG,确实是我疏漏了,很抱歉

2017-08-13

MP4Info.jar(实现MP4边下边播的jar库)

原理请看我的博客:http://blog.csdn.net/u013640004/article/details/53573864,不是你想要的就别下载了。 简介: 这套方案可以完美实现了MP4文件,在http协议中的边下边播的本地功能,分为两部分(切割、合并)。使用者将视频用该库切割后上传到服务器,然后从服务器依次下载下来用该库进行合并即可播放,播放器需要进行一定的自定义,我做了一个,但原来的逻辑并不通用,所以就等迟点我改一下再发出来了,具体请关注我上面写的博客。 附加功能: 可添加自定义数据,例如可以在切割视频的时候,给视频添加标题,作者等信息,反正可以携带自定义数据,什么数据你们说了算(也不知道这功能有没有用,或者把,因为苹果端对这种播放的方法不太兼容,有一定的问题,需要首先获得视频时长才可以,这时就可以在里面带上视频时长了) 使用方法: 没有几个方法,我也懒得写API文档,所以写了一个DEMO,里面涉及了一套流程的方法,可以参考。 最后: 第一次封装库,没啥经验,所以这个版本只是第一版,以后会不断改进升级的,谢谢

2017-07-30

Android仿别踩白块(学生作品)

也不算是我学生时期的作品了,那时候已经出来实习了,具备音乐块功能(默认带有一个乐谱,其他的可以自己按照格式来制作),用了surfaceView来做游戏组件,但也还是存在稍微掉帧的问题,这里可以优化一下的。

2017-07-29

Google play billing(Google play 内支付) 代码封装

里面带有对应版本的API和Util工具类,所以下载直接就能使用。如果想要使用最新版本的 API请自行按照新的API函数稍微修改一下代码参数就行了。 使用该封装,只需要简单的4步就能调起支付,参数等配置、new 一下,回调,注销。 里面的接口功能齐全,具备完整的成功、失败、错误回调。如果需要详细教程,可以看我日后写的博客

2017-07-29

Android上传(流量、速度)监测与进度条按钮

1.上传流量监听: 可监听当前app的上传流量(下载流量的相关数据里面有获取的方法,可自行实现),获取实时的上传进度与速度,代码封装完整,调用简单,无外在关联。 2.进度条按钮: 既是按钮又是进度条,点击开始上传的时候,可以调用其中方法,配合监听器传入进度与速度,组件就会变成进度条,显示上传的进度和速度。组件美观大方,代码自定义高,核心代码简短。 注意:上传流量监听获取的流量是某时间段app使用的总流量,所以如果获取的时候有其他线程在消耗流量,则会造成数据不准确。

2016-08-30

空空如也

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

TA关注的人

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