- 博客(62)
- 资源 (9)
- 收藏
- 关注

原创 命令行反编译重打包
1、下载apktool工具下载地址:https://ibotpeaches.github.io/Apktool/install/下载这两个文件放入同一个文件夹;2、反编译apk将需要反编译的apk文件放进ApkTool文件夹内,运行cmd,进入到ApkTool文件夹下;键入以下命令,执行成功会生成一个同名的文件夹;apktool d demo.apk加上 -s 表示不...
2018-02-27 19:04:41
1952
1

原创 项目中遇到的一些问题或异常以及处理方法
1、LinearLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams遇到该异常是在listview中适配器中的getView方法里,导入布局后,设置布局中的控件layoutParams时报此异常,因item的父控件是listview,所以使用LayoutParams需要找其对应的类型,需要将L............
2016-09-29 19:00:56
17031
2
原创 Android Gradle JVM配置文件gradle.properties优先级查找
目录一、Gradle7.5版本 gradle.properties属性优先级1、优先级2、查找注意事项:3、Gradle 7.5版本官网参考链接:《Gradle环境配置》Android 项目根目录下的gradle.properties文件中,可以配置JVM和Gradle属性,但在Gradle安装目录/.gradle/目录下也存在一个gradle.properties文件,在Gradle7.5版本中,gradle.properties文件中的属性配置优先级如下:
2024-12-30 15:46:29
596
原创 Android使用scheme方式唤醒处于后台时的App场景
场景:甲App唤醒处于后台时的乙App的目标界面,且乙App的目标界面处于最上层,即已经打开状态,要求甲App使用scheme唤醒乙App时,如从桌面icon拉起App效果一致。
2024-11-04 22:33:16
956
原创 Android打包aar上传GitHub生成远程依赖库
使用Terminal命令,定位到library目录下,键入命令:../gradlew uploadArchives 等待执行完成后,会在根目录下输出com.test.sdk目录,sdk目录中为test-android文件夹,其中是以版本号命名的aar包、pom.xml文件、.md5、.sha1等文件信息。
2024-05-17 18:26:08
838
原创 Xcode上传App Store Connect流程
一、上传前配置1、配置好发布证书描述文件(dis)2、配置好Version和Build的值,不配置上传过程会失败。二、编译上传1、菜单栏选择【Product】——【Archive】,开始编译,然后等待编译完成后,Xcode弹出编译版本列表弹窗,选择弹窗栏右边的【Distribute App】选项2、要上传到App Store Connect,默认选第一项3、这里选择上传还是导出,选择上传【Upload】4、这里默认为勾选,不用改动,继续下一步
2023-07-17 10:19:04
3328
原创 在现有iOS项目中,接入新的Flutter项目或现有的Flutter项目
第三种:使用 CocoaPods 在 Xcode 和 Flutter 工程中内嵌应用和插件框架,这种方式也就是使用Android Studio开发工具创建新的Flutter工程时默认的方案,新的Flutter工程创建好后,默认会创建iOS和Android的原生工程,在原生工程内,会有Flutter内嵌进去的包体,这种方案对于已经在开发中的原生工程进行对接较麻烦。这种方式相对在已经开发中的iOS项目比较友好,改动较小,而且可以实现在Flutter编码后,直接运行原生工程就可以看到效果。
2023-05-25 10:56:57
1819
2
原创 Flutter项目webview加载没有HTTPS证书的网页在Android和iOS设备上无法显示的解决方案
Flutter项目使用谷歌官方webview库 webview_flutter,加载自签名证书、证书失效、无证书等HTTPS网页地址时,在Android或pc浏览器中提示证书失效,在iOS设备上为空白页,为了加载自签名证书的网页,需要饶过iOS上的webview控件HTTPS证书校验。
2023-05-21 12:25:52
3394
2
原创 flutter编译iOS项目问题汇总
解决:在podfile文件中,找到【target 'Runner' do】这一行,换行加入【use_frameworks!】,注意不要带中括号【】。
2023-05-18 16:55:12
2213
原创 Ant命令语句
标签是构建文件的根标签,每个构建文件对应一个项目,它的几个常用属性如下name:表示project项目名default:表示该Ant项目启动时默认执行的任务名,如果没有该参数,则需要在项目运行时手动指定执行的任务basedir:表示项目执行的默认目录。
2023-04-03 16:37:08
479
原创 Mac环境下brew安装、SVN安装
按回车后,根据提示操作:输入国内镜像源序号(1-4) 再输入Y,回车等待brew安装完成即可。我测试使用的国内镜像源为清华大学,亲测可用。
2022-11-21 15:52:22
2531
原创 Handler源码解析
在android开发中,经常会在子线程中进行一些操作,当操作完毕后会通过handler发送一些数据给主线程,通知主线程做相应的操作。探索其背后的原理:子线程 handler 主线程其实构成了线程模型中的经典问题生产者-消费者模型。生产者-消费者模型:生产者和消费者在同一时间段内共用同一个存储空间,生产者往存储空间中添加数据,消费者从存储空间中取走数据。
2022-11-14 18:57:10
200
原创 Camille安卓隐私合规检测工具(Mac环境)
一、环境搭建1、Python3.10.6版本下载地址:Python官网下载链接)(Mac端)2、frida(Mac端) pip3 install frida打印该日志表明安装成功:Successfully installed frida-15.2.2
2022-08-03 18:02:59
2349
1
原创 Android 6.0-14.0系统兼容
1、新增运行时权限。2、Android 6.0 版本删除了对 Apache HTTP 客户端的支持,要继续使用 Apache HTTP API,必须在build.gradle文件中声明以下编译时依赖项
2022-07-15 18:38:09
9439
转载 CPU架构兼容
在Android 系统上,每一个CPU架构对应一个ABI:armeabi,armeabi-v7a,x86,mips,arm64- v8a,mips64,x86_64。
2022-06-16 18:56:34
626
原创 安卓获取及监听手机网络状态
一、获取当前手机联网方式是WiFi还是手机4G数据private boolean getNetworkType(){ ConnectivityManager mConnectivity = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); //检查网络链接 NetworkInfo info = mConnectivity.getActiveNetworkInfo();
2022-01-06 17:37:40
2420
原创 Linux环境下使用SDKmanager安装AndroidSDK
一、下载SDK tools1、SDK tools下载地址:https://developer.android.google.cn/studio打开上面的链接滑到最后,下载linux版本的SDK tools zip包2、下载下来并解压zip文件,可以看到cmdline-tools下的文件如下:3、在cmdline-tools文件夹下创建名字为 latest 的文件夹,并把除 latest 文件夹以外的文件,都放进latest文件夹内cmdline-tools文件夹可以放到任意位置,
2021-03-12 17:09:02
7096
2
原创 Homebrew的使用
一、基本用法 操作 命令 更新Homebrew brew update 更新所有安装过的软件包 brew upgrade 更新指定的软件包 brew upgrade wget 查找软件包 brew search wget 安装软件包 brew install wget
2021-01-26 11:03:49
146
原创 技术文章汇总
一、安卓相关1、Binder红茶一杯话Binder(初始篇) 写给 Android 应用工程师的 Binder 原理剖析 Android Bander设计与实现 - 设计篇 Binder学习指南 Binder系列—开篇 Android跨进程通信:图文详解 Binder机制 原理 Android深入浅出之Binder机制 认真分析mmap:是什么 为什么 怎么用 Android 进阶8:进程通信之 Binder 机制浅析 老罗:Android进程间通信(IPC)机制Binder简要介
2020-12-04 14:12:34
207
原创 使用Cocos Creator制作试玩广告(PlayableAd)
一、制作的试玩广告平台要求1、zip包大小必须小于5M2、资源文件必须处理成base643、代码依赖的素材放在本地,不能存在在线请求的资源二、制作环境和工具环境:Mac(版本10.15.1)工具:Cocos Creator(版本1.9.3,这里因为要使用一个合并js的脚本,但该脚本只能在这个版本使用,所以使用的cocos版本为1.9.3)合并脚本:...
2020-11-13 11:31:42
4762
11
原创 Activity启动流程(Android 10源码分析)
下面的源码分析,将按照上图的流程图一步一步分析一、启动进程启动Activity先从startActivity开始,点进startActivity进入ContextWrapper类中,↓ @Override public void startActivity(Intent intent) { mBase.startActivity(intent); }上图中mBase对象是Context,Context的实现类为ContextImpl,进入Conte..
2020-10-16 17:58:45
4010
3
原创 手写一个AIDL
客户端demo:https://github.com/hewind/AidlClientTest服务端demo:https://github.com/hewind/AidlServerTest实现功能:增加人人员、删除人员、获取人员信息;一、客户端1、创建PersonBean实体类public class PersonBean implements Parcelable { private String name; public PersonBean(String
2020-09-11 16:59:18
2572
原创 iOS创建苹果证书、制作p12证书流程
一、创建Certificates1、在苹果开发者后台点击右上角【Account】进入以下界面,然后点击【Certificates, Identifiers & Profiles】2、进入以下界面后点击【Create a certificate】3、然后选择证书类型,Apple Development(开发者证书),Apple Distribution(发布证书),这里选择开发证书,选中【Apple Development】,点击【Continue】继续4、接着进入以下界面,这里...
2020-08-14 16:36:00
54932
10
原创 Android文件路径获取
Android文件存储分为内部和外部存储一、内部存储getFilesDir()= /data/data/com.example.cjmsdkdemo/filesgetCacheDir() = /data/data/com.example.cjmsdkdemo/cache此存储路径不需要申请读写sd卡权限;二、外部存储Environment.getExternalStora...
2019-09-12 14:46:11
1240
原创 IOS SDK项目打包成Framework静态库
一、打包代码1、新建framework工程,如图:2、选中Target,选择Build Settings,在Architectures下增加armv7s3、Build Active Architecture Only修改为NO,否则生成的静态库就只支持当前选择设备的架构 4、在搜索栏搜索Mach-O Type,将Mach-O Type修改为S...
2019-06-25 11:00:22
3126
2
原创 获取屏幕分辨率
第一种 不含状态栏public int getWindowWidth(){ WindowManager wm = (WindowManager) (this.getSystemService(Context.WINDOW_SERVICE)); DisplayMetrics dm = new DisplayMetrics(); assert wm...
2019-05-17 19:35:16
4651
原创 安卓项目依赖library,同时需要依赖library中libs下aar文件的两种依赖方式
先在library中添加aar依赖//添加一个本地仓库,并将libs目录作为仓库地址repositories{ flatDir { dirs 'libs' }}dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation (n...
2019-04-25 15:20:05
3386
原创 Android studio 生成aar包,不把第三方jar打进去的两种方式
一、第一种方式1、新建一个mylibs文件夹(名字只要与工程里的libs不冲突就行),把不参与打包的jar包放进去2、在gradle中添加依赖,依赖方式使用 compileOnly,compileOnly表示只参与编译,不参与打包repositories{ flatDir{ dirs 'libs' dirs 'mylibs' }}...
2019-04-24 15:48:51
5679
6
原创 mac常用
1、复制文件目录快捷键option+command+c2、查看Android SDK的目录1、在Users/用户名/ 目录下,空白区域右键点击查看显示选项2、在弹出的选项框中勾选 “显示资源库文件夹”,打开资源库文件即可3、Mac终端出现Permission denied的解决办法chmod -R 777 所执行文件所在目录路径-R 是指级联应用到目录里的所有...
2019-04-23 16:14:40
322
2
原创 Unity3D接入Android第三方SDK流程
一、本例子中使用的Android Studio为3.2.0版本,Unity为2018.3.12版本二、Unity3D调用SDK1、一般第三方SDK都会有一个暴露给接入方(即Unity3D)的一个接口类,该类中包含了一些SDK功能的各个调用方法,例如下面这个SDK接口类中包含了初始化、登录、登出三个功能的接入类,里面的每个方法跟参数都加了注释;先看SDK库工程目录,mysdk是SDK库工...
2019-04-17 23:40:29
15066
12
cocosCreator打包web-mobile合并html脚本
2020-11-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人