- 博客(115)
- 资源 (84)
- 收藏
- 关注
原创 UGUI-ContentSizeFitter之最简单实现maxSize限制
1. 复制ContentSizeFitter源码出来,改名为`ContentSizeFitterEx` (AddComponentMenu里面的名字也需要改。)2. `FitMode`增加枚举MaxSize3. 增加序列化属性`m_MaxHorizontal`和`m_MaxVertical`4. 修改`HandleSelfFittingAlongAxis`增加maxSize判断5. 编写`GetMaxSize`方法6. 修改完毕替换场景里面的`ContentSizeFitter`
2022-12-28 14:45:40 1008 1
原创 解决穿山甲Gromore广告在Oppo上报广告病毒Android.Virus.AdCheat.AdCut.A
在上架Oppo的时候审核打回了发现了病毒。提示如下:随即我在oppo手机上用手机管家扫描,的确也是提示这个病毒:Unity3D游戏接入了穿山甲的广告Sdk ,我接入的版本为2022年12月07日15:26:28为止最新的 。而且我能确保对广告没有任何违规操作。由于是上架oppo被打回,于是第一件事情肯定是先找oppo的客服,咨询一番发现客服是傻b。只会重复这一句:让开发去查。由于客服那边无法得到有效信息,于是在百度和谷歌搜索了一番。咦~竟然在oppo社区发现有类似的问题:但是会发现他们的问题跟我的不
2022-12-07 16:02:20 8480
原创 CleanMyMacX频繁弹密码 菜单浮窗无法显示显示空白解决办法
更新到4.12.1的Crack版本之后,发现做一些操作要一直输入密码,主要是因为你使用的是Crack版本的原因,解决办法如下: (版本可以覆盖安装,不影响)
2022-11-15 21:07:54 1479
原创 解决AndroidStudio修改代码运行没变化没生效的问题-Xposed插件重载
一、 简介更新了AndroidStudio4.2.1之后出现了一个问题:改了代码之后点击运行,发现运行起来的app是我没改之前的代码。例如我开始写了一个打印Log.e("@@","测试打印"),运行app之后是正常打印,然后我又加了一句打印,运行app,发现新加的打印并没有打印。此文章记录一下解决问题的思路以及结果。二、尝试发现问题2.1 搜索遇到问题找度娘,搜了一圈AndroidStudio改代码运行没变化相关的,发现没有相关的问题或者文章,有相关的都是就版本的InstantRun问题。2
2021-06-10 15:55:13 9036 4
原创 [Xposed开发] Xposed模块使用XSharedPreferences进行存储数据
一、简介正常在编写模块的时候,我们想给模块增加一些开关,例如模块是否启动这个功能,这时候我们就得需要将开关状态给保存下来,方法有多种,这次是介绍XSharedPreferences。正常使用Android开发的时候我们使用SharedPreferences(以下简称sp),sp的工作流程是在对应app的内部数据目录下创建xml文件,一般路径为data/data/app包名/shared_prefs/包名.xml,于是这里就有个问题,这个目录和文件只能app自己能访问,其他文件访问不了。但是得益于我们是
2021-06-07 22:17:06 5684 6
原创 LSPosed模块自动勾选应用 模块作用域 LSPosed推荐的应用
Edxposed的模块作用域和LSPosed需要用户手动勾选应用,但是有些模块可以自动勾选应用,这是怎么做到的呢? 其实就是模块的作用域Scope1. 添加array在res - values 目录下添加array.xml,内容如下:<?xml version="1.0" encoding="utf-8"?><resources> <string-array name="xposed_scope"> <!--这里是填入需要自动勾
2021-06-07 17:21:00 10149 12
原创 解决Mac网易云音乐下载管理识别不到mp3歌曲(修改Comment)
简介在Mac上使用网易云音乐的时候,不能直接显示柏本地歌曲,只能通过下载管理添加本地,文件夹,但不是网易云下载的歌曲却识别不出来。那么网易云是根据什么识别出来的呢,就是文件信息里面的Comment :所以,我们只要把这个数据补上就可以让Mac网易云音乐识别出来歌曲步骤分析Comment从网易云音乐得到Aes的解密key通过文件的Title,利用网易云音乐的api接口搜索歌曲匹配歌曲利用网易云音乐的api接口获取歌曲详情利用详情信息组合成Comment信息加密回填到文件的Commen
2021-04-08 15:53:31 2462
原创 2023年最新苹果AppleiOS开发证书申请创建App详细图文流程
在XCode里面新建项目,点击项目 - TARGETS下面的项目 - Siging & Capabilities - Provisioning Profile - 点开选择Import Profile,导入你下载的3个描述文件。设备列表,表示当app安装调试的时候可以安装在这些机器上面,设备使用udid进行唯一判断,创建描述文件(Profiles)的时候需要选择设备。: 打开访达Fidler,位置栏目点击手机,手机名字下面的信息,即可看到udid,右键即可复制。app的标识,例如app的名字描述,包名。
2021-01-25 20:22:29 66688 8
原创 解决Android11 adb push Permission denied
这里写自定义目录标题Android11 adb push Permission denied解决方法Android11 adb push Permission denied在Android11上使用adb进行push文件到手机内存卡的时候报错Permission denied,意思是没权限。解决方法push的目标目录不要使用 mnt/sdcard,使用真实的路径,例如storage/emulated/0/ adb push testFolder/ storage/emulated/0/..
2020-11-23 22:03:10 6513
原创 Libgdx实现和原生view进行层级透明叠加,修改GLSurfaceView为GLTextureview
一、简介使用Libgdx的都知道,Libgdx使用的是GLSurfaceView,GLSurfaceView从Android 1.5(API level 3)开始加入,作为SurfaceView的补充。它可以看做是SurfaceView的1种典型使用模式。在SurfaceView的基础上,它加入了EGL的管理,并自带了渲染线程。所以,GLSurfaceView还是和SurfaceView一样,...
2019-03-13 20:24:08 4898 4
原创 更新AndroidStudio3.3之后编译构建报错 Task 'wrapper' not found in project ':xxxxxxxx'
开始是有点懵逼的,全局搜索没有这个wrapper的task,百度谷歌也无果。试过删除gradle的环境变量,降低gradle版本,都不行。重新rebuild项目,报了一些包找不到。最终解决方法是: close项目,重新import,不是open,是import...
2019-01-16 17:37:45 33758 7
原创 libgdx音量逐渐停止,解决音量调节崩溃crash闪退
一、 音量逐渐停止在自己的项目做到后期之后,老板说了一个体验很不好的问题: bgm切换的时候,突然就停止,太突兀了,体验非常糟糕,能不能逐渐停止?当时,我就想拿起我柜子里面的阳江十八子40米西瓜刀,往老板身上砍。但是,理性告诉我,不能冲动,于是我就先找了一下libgdx里面有没有提供逐渐停止这样子的方法,于是打开了Music接口,发现就几个方法。。。。。这就脑瓜疼了在我百思不得其解的时候...
2018-10-29 12:03:11 583
原创 Cannot change attributes of configuration ‘:xxxxxx:kapt’ after it has been resolved
Cannot change attributes of configuration ‘:xxxxxx:kapt’ after it has been resolved when update Android Studio to 3.2.1之前项目禁止,一直没敢升级as,怕有坑,今天一升级,果然有坑,因为这次升级需要gradle也升级,每次gradle升级有些东西都修改了,所以一般gradle操作...
2018-10-25 14:51:40 2310
原创 Libgdx 解决部分Android机型锁屏崩溃crash
libgdx使用了全屏模式之后,在某些机型会出现崩溃的情况,两年前就存在了,一直到现在为止,官方都没进行修复,其崩溃原因就是在源码AndroidGraphics.java中的onPause可以看到这样子的一段代码:void pause () { synchronized (synch) { if (!running) return; ...
2018-09-17 10:40:17 748
原创 Kotlin data class 重写getter setter处理,支持Parcelable的intent传递和Gson解析
一、 前言Kotlin的data class是不支持直接get和set的,于是有些需要修改实体参数的需求就做不了。 在百度或谷歌搜索到的其他文章,有说是定义一个新的属性在内部,但是这样子并不适合我们在项目中使用。二、 例子价格的处理:服务器要求价格的单位是分,但是移动端显示和填写的时候需要单位为元,这个时候需要我们在实体类的进行分和元的转换处理。 一个商品实体类da...
2018-02-24 17:21:33 11743 4
原创 Android AOP之路四 编译时注解详细讲解
一、 简介在第一篇文章时候有说了,注解有三个功能:标记信息: 第二篇文章说了运行时候动态处理: 第三篇文章说了编译时候动态处理: 这篇文章说简单说明一下AOP和APT的关系:AOP是Aspect-oriented programming的缩写,叫做面向切面编程,例如OOP(面向对象),AOP只是一种思想的统称,实现这种思想的方法有挺多,例如面向对象的有java、c++、c#等。 AOP通过
2017-11-09 17:28:31 2602
原创 Android画板开发(五) 添加文本文字
一、前言添加文本,也是属于 一个比较简单的功能,在第二篇的时候,添加了橡皮擦,在橡皮擦里面通过一个模式的形式进行画笔的判断,当然文本也是如此,添加一个文本模式,在onTouchDown的时候,弹出PopupWindow,输入文本,然后PopupWindow消失的时候,利用staticLayout绘制到画布上即可。当然也有些需要注意的地方下面一步步来实现二、实现2.1 添加文本模式例如橡皮擦那样,添加
2017-11-02 09:34:30 3955 8
原创 Android画板开发(四) 添加背景和保存画板内容为图片
一、绘制背景绘制背景的方法有两种:自己利用canvas进行绘制利用view的自带方法进行绘制1.1 canvas绘制背景自己绘制的背景的方法就是在onDraw回调进行绘制的时候,先draw一个背景,再进行draw原来的内容 override fun onDraw(canvas: Canvas) { super.onDraw(canvas) //先绘制颜色作为
2017-11-01 09:59:29 6682 1
原创 Android画板开发(三) 撤销反撤销功能实现
一、分析这篇将会讲解撤销反撤销功能的实现,先讨论一下这个原理是怎么样实现的。每次撤回的内容,内容是怎么定义呢? 其实就是每一笔,每一笔作为撤回的内容,那每一笔怎么算呢,就是算手指从按下-移动-放开这一个过程就是一笔。我们只需记录这个过程为一笔,然后用一个已画列表list列表来记录这个过程的paint画笔和路径path。撤销的时候就把后面的一个数据移到另一个撤销列表反撤销的时候,就把撤销列表的最后面那
2017-10-31 21:52:12 6190
原创 Android画板开发(二) 橡皮擦实现
在上一篇实现了简单的画板功能, 这篇实现橡皮擦功能,首先分析一下应该如何实现,在Andriod有个图像混合(Xfermode)概念,利用这个概念我们就可以实现橡皮擦功能。一、XfermodePaint有一个方法setXfermode(Xfermode),这个方法设置图像的混合模式。参数有三个子类:AvoidXfermodePixelXorXfermodePorterDuffXfermode前
2017-10-31 10:53:37 9078 6
原创 Android画板开发(一) 基本画笔的实现
一、简介这是画板系列的第一篇,一步步开始,从简单的画板,到功能稍微齐全一点的画板,例如基本画笔、橡皮擦、背景、文字、撤销、反撤销、保存等这篇带大家实现一个最简单的画板,前提是需要对自定义View有一定的了解。用的是kotlin语言二、实现分析如何实现: 定义了画笔和Path,然后在触摸屏幕的时候,手指一边移动一边进行path的滑动,绘制。这就完成了一个最简单的画笔功能。下面几十行代码完成这个 cla
2017-10-31 10:31:43 5789 2
原创 微信Android SDK反编译还原源码 进行修改重新编译
一、介绍微信sdk,做开发的都应该用过,微信分享、支付,都要用到的。接下来,跟着我,把他的sdk源码还原为一个module可编译的形式。用到的工具:jadx: 这是一款反编译apk和jar包的工具,下载地址点我jeb: 这也是一款查看apk源码的工具,下载地址点我Android Studio二、过程2.1 下载微信Android sdk的jar包下载页面我用的方法是,gradle依赖,然后把
2017-10-08 20:09:40 7477 4
原创 Android防蹭网大师1.3.3.125绿色优化精简版
防蹭网大师是一款类似wifi杀手的软件,可以禁止用一个局域网的人的网络,大家连同样的wifi,我可以让其他人上不了网,支持Android4.0 5.0 6.0 7.0。修改内容:去除引导页去除首页的新闻列表去除首页我的头条按钮去除检查更新,可永久使用去除自启动、敏感服务和权限去除通知栏的防蹭网大师正在运行的提示精简去除无用代码和图片和库,仅剩余2m多去除app整体广告(首屏、测速页、
2017-09-28 16:59:15 2101
原创 [Android App] iPhoneX朋友圈小尾巴工具
一、 简介功能: 表面是一个iPhone的信息查看器,但是输入“天平”之后,即可开启隐藏页面,输入内容,点击开始装逼,即可发布IPhoneX尾巴的朋友圈内容。下载地址:
2017-09-22 10:59:46 1801 2
原创 Android跳转-ARouter详细使用教程
一、简介Android平台中对页面、服务提供路由功能(跳转)的一个库1.1 最新版本 模块 arouter-api arouter-compiler arouter-annotation 最新版本 1.2 实例图片1.3 功能介绍支持直接解析标准URL进行跳转,并自动注入参数到目标页面中支持多模块工程使用支持添加多个拦截器,自定义拦截顺序支持依赖注入,可单
2017-09-14 16:28:04 25597 5
原创 Android 自动获取输入短信验证码库AutoVerifyCode
一、简介Android的短信验证码自动输入库,内嵌自动申请权限,兼容性高,支持多项配置。短信验证码长度验证码类型(大写字母、小写字母、大小写字母、数字、数字字母)短信内容过滤发送者号码过滤短信权限回调,失败重新操作等等消息回调,可自行处理Github地址: https://github.com/tpnet/AutoVerifyCode二、使用2.1 最简单的使用适用在验证码为数字,而且
2017-07-24 10:44:16 6342 6
翻译 AndroidStudio3.0 Android Profiler分析器(cpu memory network 分析器)
Android Profiler分为三大模块: cpu、内存 、网络。基本的使用在上一篇文章有讲到。这里详细说一下。cpu分析器CPU ProfilerCPU分析器可帮助您实时检查应用程序的CPU使用情况和线程活动,并记录方法跟踪,以便您可以优化和调试应用程序的代码。要打开CPU Profiler,请按照下列步骤操作:点击 View > Tool Windows > Android Profile
2017-05-21 23:58:47 106097 21
原创 AndroidStudio3.0 下载使用新功能介绍
谷歌2017发布会更新了挺多内容的,而且也发布了AndroidStudio3.0预览版,一些功能先睹为快。(英语一般,有些翻译不太好)下载地址https://developer.android.google.cn/studio/archive.html选择显示全部即可看到下载地址,这里给出来了。Windows (64-bit): android-studio-ide-171.4010489-win
2017-05-21 18:34:38 60893 8
原创 Android在项目中接入腾讯TBS浏览器WebView的教程与注意的地方
我们都知道,在Android开发中,经常会用到Webview,而且WebView是出了名的坑的,各种bug。说得这么屌,其实就是一个webView控件,然后解析解析网页的内核是他自己做的,叫X5内核(系统原生的WebView用的是WebKit内核),所以我们开发者用的时候,主要就是用这个。如果都都没有,而且手机没有链接网络,需要离线,这时候需要打包内核进app,app包增大20M左右, X5内核在哪里下载?开始说了,这个腾讯的WebView使用的是自己的X5内核。那怎么判断他是使用X5内核还是自带内核呢?
2017-04-28 16:51:29 43031 18
原创 Retrofit+Rxjava+SqlBrite+SqlDelight实现多文件断点续传下载
介绍实现功能:多文件下载暂停,开始断点续传进度回调sqlite保存下载信息程序被杀了,重新打开继续断点下载。。。github: https://github.com/tpnet/RetrofitDownloadDemo , 有用可以点个start谢谢本文需要SqlDelight、SqlBrite、AutoValue的知识。使用的是Rxjava1.2.9版本。如何实现看看流程图:断点续
2017-04-24 16:28:53 3356 1
原创 Glide结合Okhttp做cookie管理实现注册需求的图片验证码短信验证码功能
简介有一种需求是这样子,在注册这个功能上,利用cookie进行标识当前手机,进行短信验证码的获取。 流程是这样的(有点坑,csdn好像用代码画不了下面这个图):这时候问题来了,我们需要获取Glide请求验证码的Cookie,这该怎么解决呢?方法1结合okhttp,Glide使用okhttp进行加载,然后okhttp进行cookie管理,发送请求获取短信验证码。1. 导包导入使得glide支持okht
2017-04-11 16:27:31 4625 4
原创 Android SqlDelight和SqlBrite无缝结合使用的Demo例子
Android SqlDelight详解和Demo例子: 点我 Android SqlBrite使用介绍和官方demo详解: 点我 Android AutoValue使用和扩展库: 点我在说到SqlBrite的时候有介绍到它的官方的例子,官方的栗子是没有用到SqlDelight的。这里我在这个例子的基础上添加SqlDelight,实现SqlBrite和SqlDelight的无缝连接。这里我偷个懒
2017-03-17 11:41:45 2616
原创 Android SqlBrite使用介绍和官方demo详解
一、什么是SqlBrite对 Android 系统的SQLiteOpenHelper和 ContentResolver 的轻量级封装,配合Rxjava使用。github地址: https://github.com/square/sqlbrite ps: 2017年3月15号为止,还不支持Rxjava2,有点遗憾。二、导包和初始化在module的builde.gradle依赖加入以下,如果你没导
2017-03-15 15:18:05 6009
原创 Android AutoValue使用和扩展库
一、什么是AutoValue意思就是自动值,谷歌出品,添加@AutoValue这样的注解 就能够自动生成代码,使得程序可能更短,更清晰。 支持Java1.6+github: https://github.com/google/auto/blob/master/value/userguide/index.md首先看一个bean类,User.java:public class User{ pr
2017-03-15 10:25:45 6973
原创 Android SqlDelight详解和Demo例子
一、简介SQLDelight 和 SqlBrite 是 Square 公司推出的一个 Android 平台数据库解决方案。在了解这个两个东西前,必须先得有Andorid的Sqlite的知识(SqliteDatabase and SqliteDataHelper),还有AutoValue。要分清他们两个的功能: - SqlDelight是用来把Sql语句生成Java对象的 - SqlBrite
2017-03-14 19:46:26 5634 1
原创 Android Notification不显示浮动通知,不显示锁屏通知
问题不显示浮动通知,不显示锁屏通知。解决1. 首先手机得先开启权限应用详情 -> 自定义通知 -> 开启对应的权限2. 设置Notification的flagNotification的flag有5个。FLAG_AUTO_CANCEL 当通知被用户点击之后会自动被清除(cancel)FLAG_INSISTENT 在用户响应之前会一直重复提醒音和震动,(如果在default那里开启的话)。FL
2017-03-10 17:10:14 19052 2
原创 Android快速依赖注入框架Dagger2使用2
接着上一篇: http://blog.csdn.net/niubitianping/article/details/60878104一、单例@Singleton需要实例的类如果是单例的,需要在Component接口和Module类的方法使用@Singleton。栗子: 新建一个SingleClass.javapublic class SingleClass { //内容可以为空,仅做测试}
2017-03-10 10:41:10 1337 2
原创 Android快速依赖注入框架Dagger2使用1
一、啥是Dagger2前面的概念可能开始看不懂,给点耐心,看到例子就懂了。 本篇文章需要注解方面的知识,不了解的可以先看:http://blog.csdn.net/niubitianping/article/details/601451281.1 简介Dagger2是一个Android/Java平台上快速依赖注入框架,由谷歌开发,最早的版本Dagger1 由Square公司开发。依赖注入框架主要用于
2017-03-08 18:22:30 5482 3
原创 Android AOP之路二 Android上的注解
一、简介啥是注解,不懂的可以先看我上一篇文章。在android 里面 注解主要用来干这么几件事:和编译器一起给你一些提示警告信息。配合一些ide 可以更加方便快捷 安全有效的编写java代码。谷歌出的support-annotations这个库 就是主要干这个的。和反射一起 提供一些类似于spring 可配置的功能,方便简洁。二、Support Annotations栗子这里使用官方的一个库
2017-03-06 13:58:59 2744
原创 AndroidAOP之路三 注解处理解释器IOC
一、提取Annotation信息当开发者使用了Annotation修饰了类、方法、Field等成员之后,这些Annotation不会自己生效,必须由开发者提供相应的代码来提取并处理Annotation信息。这些处理提取和处理Annotation的代码统称为APT(Annotation Processing Tool)。JDK主要提供了两个类,来完成Annotation的提取:java.lang.a
2017-03-04 18:37:23 1378
EnhancedScroller v2.39.0.unitypackage
2024-08-16
Unity3d Feel v4.2.unitypackage
2024-08-16
True Shadow - UI Soft Shadow and Glow v1.8.3unitypackage
2024-08-16
Easy Save - The Complete Save Data Serializer System v3.5.15
2024-08-16
Highlight Plus All in One Outline Selection Effects v12.0
2024-05-11
Touch Camera PRO 2024 Easy Mobile Desktop Camera Controller3.1.2
2024-05-11
Translucent Image - Fast UI Background Blur v3.16.0.unitypackage
2024-05-11
Feel v3.16.unitypackage
2024-05-11
Liquid Volume 2 v5.0.3.unitypackage
2024-05-11
A Pathfinding Project Pro v5.0.5.unitypackage
2024-05-11
All In 1 Sprite Shader v3.6.unitypackage
2024-05-11
UGUI Super ScrollView v2.5.4.unitypackage
2024-05-11
Behavior Designer - Behavior Trees for Everyone v1.7.9.unitypack
2024-05-11
Ultimate Outlines Highlights v2.3.unitypackage
2023-09-11
Easy Save - The Complete Save Data Serializer System 3.5.6.unity
2023-09-11
Camera Controller 3.349.unitypackage
2023-01-07
Feel 3.9.1.unitypackage
2023-01-07
TopDown Engine 3.1.1.unitypackage
2023-01-07
Easy Save v3.5.3.unitypackage
2023-01-07
Easy Save v3.5.2 - The Complete Save Data Serializer System
2022-12-12
Fullscreen Editor v2.2.6.unitypackage
2022-07-04
UI Text Effects 1.25.unitypackage
2022-06-29
UGUI Super ScrollView v2.4.4.unitypackage
2022-04-21
Camera Filter Pack v4.1.0.unitypackage
2022-01-22
SG Patcher - Update your game easily In-App v1.12.2.unitypackage
2021-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人