自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (1)
  • 收藏
  • 关注

原创 简单粗暴识别工作室Android识别模拟器

最近有项目需要设备模拟器,此贴用来记录我识别模拟器的方法:1、通过能否打电话来判断模拟器:String url = "tel:" + "10086"; Intent intent = new Intent(); intent.setData(Uri.parse(url)); intent.setAction(Intent.ACTION_DI...

2019-08-21 18:18:00 4557 5

原创 Android 修改jar包内容

首先打开需要修改的.class文件(直接在android studio中打开就行),查看包名新建对应的java文件 :将childHelper的内容拷贝过来。进行修改即可。删除原来的class文件:选择对应的jar包,重命名zip后缀,双击打开,选择想要更改的class文件,删除。...

2019-05-07 17:06:11 2551

转载 Android webview屏蔽长按事件

要禁用长按事件,需要先设置webview.setLongClickable(true),再给webview添加长按监听事件,不做任何操作。代码如下:webview.setLongClickable(true);webview.setOnLongClickListener(new OnLongClickListener() { @Override public boolean...

2018-12-13 14:57:54 7304 2

原创 鸿蒙开发状态共享

鸿蒙开发

2024-03-01 17:46:56 342

原创 The layout <layout> in layout has no declaration in the base layout folder [error]报错解决

重启Android Studio可以解决。

2023-09-13 15:25:14 1187

转载 Generate Signed Bundle: Errors while building Bundle file. ‘other‘ has different root

Same here. Looks like it does not like to build to another drive letter. i.e. Key store path is on D: and destination folder on E: and I get the message 'other' has different root. Note that the file seems to be produced on E: anyway. When I change destina

2023-08-01 18:10:25 388

原创 android studio JNI开发

在工程目录下执行如下命令:javah -d app/src/main/jni -classpath app/src/main/java/ -jni -v com.example.myapplication.JNITest。执行完毕后可以看到在app/src/main目录下生成了jni目录,目录里生成了对应的.h文件,文件名为com_example_myapplication_JNITest.h。2. 使用javac命令编译JNITest.java文件,生成JNITest.class文件。

2023-07-24 19:51:36 2013

原创 Android水滴屏全屏隐藏状态栏

在Activity的setContentView之前调用。

2023-07-20 18:16:56 428

原创 Android抖音游戏sdk激励视频广告接入问题

在穿山甲申请的appid和codeid,需要在抖音游戏提交申请。具体请联系抖音技术或商务。广告初始化报错:code=-2 msg=Invalid app id []

2023-05-25 17:00:47 916

原创 26个新媒体运营数据来源渠道

新媒体运营园: https://t.zsxq.com/mYn6iEm。艾瑞数据 : dat a.iresearch.com cn。ASO100 (七麦数据] : www.qimai.cn。女瑞数据 : data.iresearch.com cn。天眼查: www.tianyancha.com。微指数: www.weiz hishu.com。易观大数据: www.analysys.cn。IT桔子 : www.itjuzi.com。女媒网 : www.iimedia.cn。

2023-05-05 11:05:50 1540

原创 apktool反编译提示Unrecognized option: --only-main-classes

apktool反编译提示Unrecognized option: --only-main-classes。apktool版本低于2.4.1,下载一个不低于 2.4.1的apktool即可。

2023-04-07 11:23:22 1191

转载 解决 Android Studio 报错 Invalid Gradle JDK configuration found.

第二步:选择 Android Studio 中 File 菜单下的 “Sync Project with Gradle Files”,点击执行。问题:Invalid Gradle JDK configuration found.第三步:等待 Android Studio 更新完工程依赖文件,问题解决。第一步:删除 .idea/gradle.xml 文件。

2023-04-03 20:01:21 1471

原创 Android 游戏sdk开发动态加载技术

首先不同的资源有不同的文件流格式,比如xml、图片等,其次针对不同设备加载的资源可能不一样的,如何选择合适的资源也是一个需要借鉴的问题,基于这两点,这种方式也不建议使用。在介绍它们之前,首先要明白宿主和插件的概念,宿主是指普通的apk,而插件一般是指经过处理的dex或者apk,在主流的插件化框架中多采用经过特殊处理的apk作为插件,处理方式往往和编译以及打包环节有关,另外很多插件化框架都需要用到代理Activity的概念,插件Activity的启动大多数是借助一个代理Activity来实现的。

2023-03-15 18:09:01 1367

原创 Android今日头条平台隐私合规整改

(Android如IMEI、MEID、OAID、Serial、ICCID、Android ID、IMSI,iOS如IDFV、IDFA)、MAC地址、IP地址、位置信息(如GPS、蓝牙和基站)、WLAN接入点(如SSID、BSSID)、WiFi列表、设备传感器信息、应用信息、设备信息。申请权限,一次安装仅可申请一次。用户拒绝不得退出服务,不得多次申请权限。使用第三方sdk,需要在第三方信息共享清单 声明。用户同意协议之前,不得获取用户任何个人信息。用户同意协议之前,不得申请用户权限。权限申请需要声明弹窗。

2023-01-06 17:50:02 2354

原创 游戏母包正常,二次打包出现bug解决思路

2、检查包名,版本号是否有所限制,不可修改。二次打包的分包跑一遍,拿下日志。母包跑一遍,拿下日志。

2022-12-16 16:11:28 852

原创 Android基于开源项目搭建自己的技术堆栈

timber是JakeWharton开发的一个日志记录库,它的特点是可扩展框架,开发者可以方便便捷地集成不同类型的日志记录方式,例如打印日志到Logcat,打印到日志文件、打印日志到网络等,timber通过一行代码可以调用多种方式。jackson是java语言的一个流行JSON函数库,并没有为Android优化定制过,因此函数包中含有很多非必要的api,相比其他JSON函数库,用于Android平台会更显著的增大最终生成APK的体积。从较高的层次讲,一个APP的整体架构可以分为两层,即应用层和基础框架层。

2022-12-13 17:05:43 1496

原创 HandlerThread和IntentService简介

HandlerThread是一种具有消息循环机制的线程,它的内部可以使用Handler。IntentService内部采用HandlerThread来执行任务,当任务执行完毕后IntentService会自动退出。从任务执行角度来看,IntentService的作用很像一个后台线程,但是IntentService是一种服务,它不容易被系统杀死从而可以尽量保证任务的执行,而如果是一个后台线程,由于这个时候进程中没有活动的四大组件,那么这个进程的优先级就会非常低,很容被系统杀死,这就是IntentService

2022-12-06 17:38:26 866

原创 Android属性动画的工作原理

属性动画要求动画作用的对象提供该属性的set方法,属性动画根据你传递的该属性的初始值和最终值,以动画的效果多次去调用set方法。每次传递给set方法的值都不一样,确切来说是随着时间的推移,所传递的值越来越接近最终值。如果动画的时候没有传递初始值,那么还要提供get方法,因为系统要去获取属性的初始值。对于属性动画来说,其动画过程所做的就是这么多。

2022-11-28 21:53:19 1149

原创 Android点击事件的传递规则

4、某个view一旦开始处理事件,如果它不消耗ACTION_DOWN事件(onTouchEvent返回了false),那么同一事件序列中其他事件都不会再交给它来处理,并且事件将重新交给它的父元素处理,即父元素的onTouchEvent会被调用。5、如果View不消除ACTION_DOWN以外的其他事件,那么这个点击事件会消失,此时父元素的onTouchEvent并不会被调用,且当前View可以持续接收后续的事件,最终消失的点击事件会传递给Activity处理。6、ViewGroup默认不拦截任何事件。

2022-11-07 00:05:00 1752

原创 android游戏母包打渠道包jar包无法编译为dex解决思路

res资源编译问题,可以先打出demo包,反编译后拿出res文件,再进行合并。先在AS打出dex,再把dex转换为smali文件。再把渠道jar包的smali合并到母包。

2022-11-03 17:44:13 1854 2

原创 android jar包转dex转smali

第一:java -jar -Xms1024m -Xmx1024m dx.jar --dex --output=aa.dex xx.jar。第二:java -jar baksmali.jar -o [smali文件名] xx.dex。需要工具:dx.jar、baksmali.jar。

2022-11-03 15:31:08 1320

原创 Android中IPC方式简介

ContentProvider是安卓中提供专门用于不同应用间进行数据共享的方式,它天生适合进程间的通信。Android是基于Linux,使得其并发读写文件可以没有限制的进行,甚至两个线程同时对一个文件进行写操作都是允许的。Messenger是以串行的方式处理客户端发来的消息,如果大量的消息同时发送到服务端,且需要并发处理,那么Messenger就不太合适了。Messenger是一种轻量级的IPC方案,它的底层实现是AIDL。共享文件也是一种不错的进程间通信方式,两个进程通过读写同一个文件来交换数据。

2022-11-02 17:58:07 947

原创 android中IPC机制简介

除了Binder,Android还支持Socket,通过Socket也可以实现任意两个终端之间的通信,当然同一个设备上的两个进程通过Socket通信也自然是可以的。什么是进程,进程和线程是截然不同的概念。按照操作系统中的描述,线程是cpu调度最小的单元,同时线程是一个有限的系统资源。IPC是Inter-Process Communication的缩写,含义为进程间通信或者跨进程通信,是指两个进程间进行数据交换的过程。最简单情况下,一个进程中可以只有一个线程,即主线程,安卓中为UI线程。

2022-10-25 15:27:39 1498

原创 Activity启动模式

这是一种单例模式,此模式下,只要栈中存在此Activity,那么多次启动此Activity都不会重复创建新实例,和singleTop一样,系统会回调其onNewIntent。当启动一个Activity后,系统首先会寻找栈中是否存在该Activity,存在,则把Activity调到栈顶,并回调onNewIntent方法。当Activity启动后,系统为其创建一个新的任务栈,然后Activity单独存在这个任务栈中,由于栈内复用的特性,后续请求均不会创建新的Activity,除非此任务栈被系统销毁。

2022-10-20 20:23:55 1801

原创 Activity生命周期

此时可以做一些数据存储、停止动画等操作,不能太耗时,因为会影响到新Activity的显示,onPause必须执行完毕,才会执行新Activity的onResume。(7)onDestroy:Activity即将被销毁,Activity最后一个生命周期回调,一般在这里做回收工作和资源释放。(3)onStart:Activity正在被启动,Activity可见状态,但还无法交互,Activity没显示在前台。(4)onResume:Activity可见,并且可以交互,Activity显示在前台。

2022-10-20 17:55:49 1521

原创 Android性能优化

如果不能再16ms秒内完成绘制,那么就会造成丢帧现象,即当前该重绘的帧被未完成的逻辑阻塞,例如一次绘制任务耗时20ms,那么在16ms系统发出的VSYNC信号就无法绘制,该帧就被丢弃,等待下次信号才开始绘制,导致16*2ms内都显示同一帧画面,这就是画面卡顿的原因。嵌套的布局会让View树的高度变得越来越高,因此在布局时,需要根据自身布局的特点来选择不同的Layout组件,从而避免通过某一种Layout组件来实现功能时的局限性,从而造成嵌套过多的情况发生。创建一个类的实例会消耗约15字节的内存。

2022-10-17 18:27:15 1153

转载 Java垃圾回收机制

Java 相比 C/C++ 最显著的特点便是引入了自动垃圾回收 (下文统一用 GC 指代自动垃圾回收),它解决了 C/C++ 最令人头疼的内存管理问题,让程序员专注于程序本身,不用关心内存回收这些恼人的问题,这也是 Java 能大行其道的重要原因之一,GC 真正让程序员的生产力得到了释放,但是程序员很难感知到它的存在,这就好比,我们吃完饭后在桌上放下餐盘即走,服务员会替你收拾好这些餐盘,你不会关心服务员什么时候来收,怎么收。有人说既然 GC 已经自动帮我们完成了清理,不了解 GC 貌似也没啥问题。

2022-10-14 11:02:54 782

原创 整理一下几道Android面试题

6、startService和bindService区别。2、Thread,HandlerThread是什么。3、Activity的启动模式。1、handler消息机制。5、屏幕适配,国际化。

2022-10-13 10:01:47 626

原创 android sqlite查看、导出、可视化

1、明确app sqlite的存储路径,导出命令:adb pull。可视化工具:SQLite Expert Personal。

2022-10-09 10:20:26 1060

原创 oaid SDK 调用问题 F&Q

华为\荣耀手机 oaid 返回 00000000-0000-0000-0000-000000000000 华为\荣耀手机在用户启用“限制广告跟踪”开关后,oaid 将会重置为 00000000-0000-0000-0000-000000000000

2022-07-01 11:44:42 3814 2

原创 brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1):

brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\ADMINI~1\AppData\Local\Temp\brut_util_Jar_7323532419295165375.tmp, p, --forced-package-id, 127, --min-sdk-version, 19, --target-sdk-version, 26, --version

2022-06-22 11:38:32 3947 2

转载 android对接华为游戏实名认证没有手动输入身份证的方式

而华为应用市场其他应用实名认证页面如图考虑到实名认证页面用户点击复杂度,我们希望实名认证页面也变为后者。问题解决华为技术让我按照文档依次检查:这里贴下参考链接:文档中心其中第二条,文档里说明了要使用DEFAULT_AUTH_REQUEST_PARAM_GAME参数,而我们代码使用的是DEFAULT_AUTH_REQUEST_PARAM,如图:将其修改为DEFAULT_AUTH_REQUEST_PARAM_GAME后,就修改成了正常显示简洁版的实名认证界面,问题解决...

2022-05-18 12:02:40 251

原创 ysdk接入,支付提示:系统繁忙,请稍后再试 (1003-498686-498686)

检查是否配置支付回调地址:参考OPEN后台配置文档:OPEN后台配置 - 腾讯开放平台

2022-02-11 15:10:47 483

原创 ADB wifi,AS无线调试

1.Android Studio中安装ADB WIFI插件。安装成功后重启Android Studio。2.WiFi连接(手机与pc同一个局域网下)将 Android 设备与要运行 adb 的电脑连接到同一个局域网,比如连到同一个 WiFi。将设备与电脑通过 USB 线连接。与电脑在同一局域网内,Android设备连接WiFi,然后adb命令:adb connect (设备IP)找到设备的 IP 地址。一般能在「设置」-「关于手机」-「状态信息」-「IP地址」找到,也可以使用下文里 .

2021-11-02 12:28:07 3061

原创 YSDK手机手Q版本太低,请升级后重试。解决思路

应用宝YSDK登录出了问题:QQ提示:YSDK手机手Q版本太低,请升级后重试;微信提示:YSDK配置自检发现配置错误,请结合日志进一步分析:YSDKError:Start Scan for Login Activity error;实际上手机有安装最新版QQ和微信。排查发现:主Activity配置有问题。<meta-data android:name="MAIN_ACTIVITY" android:value="com.pgame.sdkall.sdk.activ...

2021-10-27 16:34:32 501

原创 Android Textview静态设置下划线

静态设置textview下划线:效果:添加下划线背景 <TextView android:text="修改" android:background="@drawable/ye_underline_bg" android:layout_width="wrap_content" android:layout_height="wrap_content"/>背景添加..

2021-10-12 10:24:57 2504

原创 error: style attribute ‘@android:attr/windowEnterAnimation‘ not found.

Android Studio 3.0 已经不支持@开头使用android自带的属性,只要把@符号删掉就可以。

2021-09-03 16:50:36 140

原创 研发libBugly.so与应用宝libBugly-opengame.so文件冲突

ysdk闪退,研发libBugly.so与应用宝libBugly-opengame.so文件冲突 --------- beginning of crash2021-08-30 20:16:23.433 12564-12781/? A/libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 12781 (UnityMain), pid 12564 (ent.tmgp.tymwjs)2021...

2021-08-30 20:28:31 822

原创 Android解析软件包时出现问题

解决方法:1、安装包损坏,上传、下载过程,都存在损坏的可能。丢失一个字节,就无法安装。2、包名命名,我今天遇到这个问题,就是包名导致,具体参考详细的命名规范。

2021-06-07 15:12:27 2787

原创 Android云测云真机调试平台

主流厂商开放平台提供云测服务。目前有小米、华为、oppo。需注册开发者账号(个人与企业皆可)小米:https://testit.miui.com/华为:https://developer.huawei.com/consumer/cn/console#/serviceCards/华为还提供ASdebug工具服务:链接:https://developer.huawei.com/consumer/cn/doc/development/Tools-Guides/cloud..

2021-03-20 10:09:09 2053

glide3.7.0.jar

Android glide jar包,用于imageview加载图片,将jar包copy至libs 目录下

2019-05-21

空空如也

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

TA关注的人

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