android
文章平均质量分 94
林新发
Keep Reading , Keep Writing , Keep Coding.
展开
-
Android敏感权限检测,工业和信息化部关于开展纵深推进APP侵害用户权益专项整治行动的通知
文章目录一、前言二、Android 危险权限列表一、前言嗨,大家好,我是新发。最近各大应用商店平台开始严格规范应用权限。具体可以参见工信部发布的通知:《工业和信息化部关于开展纵深推进APP侵害用户权益专项整治行动的通知》作为开发者,我们需要检测自身应用的权限,一般我们都是因为接入第三方SDK才引入一些权限的,二、Android 危险权限列表权限名权限组解释ACCEPT_HANDOVERPHONE(电话组)允许呼叫应用继续在另一个应用中启动的呼叫ACCESS_B原创 2021-05-13 13:59:40 · 2305 阅读 · 3 评论 -
Unity打包apk报错: Cannot fit requested classes in a single dex file (# methods: 73376 > 65536)的解决办法
文章目录一、问题二、原因三、测试,生成超过65535个函数四、解决办法1、勾选Custom Gradle Template3、添加multiDexEnabled true4、添加multidex依赖5、修改AndroidManifest.xml6、Application类,继承MultiDexApplication五、打包测试一、问题``Unity打包apk```时报了如下的错D8: Cannot fit requested classes in a single dex file (# method原创 2020-11-08 16:59:56 · 5836 阅读 · 1 评论 -
新发的日常小问题——修改AndroidStudio的AVD下载路径
文章目录一、前言二、AndroidStudio的AVD文件夹(.android)三、搬移.android文件夹一、前言今天发现我的C盘空间快用完了。明明之前还有蛮多空间的,不能忍,排查一下到底是什么东西占用了C盘的空间。二、AndroidStudio的AVD文件夹(.android)在C盘中看到了一个avd文件夹,有11.2G那么大,里面是AndroidStudio下载的安卓仿真器。三、搬移.android文件夹在D盘新建一个avd文件夹如:D:\software\AndroidStud原创 2020-10-25 21:05:11 · 1290 阅读 · 0 评论 -
新发的日常小实验——使用AndroidStudio自制一个WebView浏览器
文章目录一、前言二、创建工程三、设置gradle一、前言做个小实验,使用AndroidStudio制作一个简单的WebView浏览器。二、创建工程点击菜单Fiew > New > New Module...选择Phone & Tablet Module名字叫WebViewDemo选择Empty Activity主Activity叫MainActivity创建成功三、设置gradle...原创 2020-10-25 12:45:41 · 3320 阅读 · 3 评论 -
新发的日常小实验——AndroidStudio设置自动import,提升开发效率
文章目录一、前言二、设置自动import一、前言用AndroidStudio做Android开发,我们写代码的时候,经常需要在文件顶部手动import引用的类,很烦,其实可以设置自动```import``。二、设置自动import点击菜单File > Settings...在Settings窗口中,进入Editor - Genral - Auto import,如下,勾选我框框的部分,点击OK即可。如下,我们用到TextView和Button的时候,会自动import对应的类,并且当我原创 2020-10-24 16:51:21 · 845 阅读 · 0 评论 -
新发的日常小实验——AndroidStudio仿真器开启与测试
文章目录一、前言二、开启仿真器三、使用仿真器进行测试1、调试2、直接运行一、前言使用AndroidStudio开发小Demo,不想总是改一点就发布apk测试,这个时候可以开启仿真器进行测试。二、开启仿真器第一次开启仿真器的话,需要进行下载。点击菜单Tools > AVD Manager点击Create Virtual Device...选择一个你喜欢的设备型号,然后点击Next如果之前没有安装过模拟器,这里需要点击Install Emulator此时会执行下载。等待下载完原创 2020-10-24 16:36:48 · 1289 阅读 · 0 评论 -
手把手教你用AndroidStudio创建工程与打包apk(包成功)
文章目录一、前言二、创建工程三、设置gradle-wrapper.properties(重要)四、全局build.gradle设置阿里云镜像(重要)五、执行Sync Project with Gradle Files六、设置apk名字七、打包apk1、默认debug.keystore前面的debug版apk1、自己创建keystore前面release版apk八、运行apk一、前言本文我将一步步演示如何使用AndroidStudio创建一个工程,进行简单的工程设置以及打包成apk。二、创建工程点击菜原创 2020-10-18 23:44:06 · 3727 阅读 · 2 评论 -
模拟器连接端口汇总和常用ADB命令
文章目录一、前言二、模拟器连接端口汇总三、ADB常用命令1 连接命令2 查看设备连接情况3 把电脑上的文件或文件夹传到模拟器里面4 把模拟器里面的文件或文件夹传到电脑上5 安装APK6 卸载APK7 获取模拟器所有包名8 获取模拟器所有包名并且包括APK路径9 获取包名对应的APK路径10 清理应用数据11 启动应用12 关闭应用13 模拟输入14 模拟按键15 模拟鼠标点击16 模拟鼠标滑动17 截屏18 获得端口号一、前言如果执行自动化测试,在没有真机的情况下,我们可以选择模拟器。目前市面上有很多模原创 2020-08-07 08:56:07 · 10633 阅读 · 0 评论 -
游戏性能指标参考,游戏质量白皮书下载
移动全平台性能测试分析专家PerfDog性能狗官网:https://perfdog.qq.com/2019年中国移动游戏质量白皮书下载下载地址:https://wetest.qq.com/white-paper/download/原创 2020-07-30 17:37:37 · 1935 阅读 · 0 评论 -
一分钟搞明白Android的.so文件、ABI和CPU的关系
文章目录一、前言二、Android的CPU架构三、CPU与API的对应关系四、典型的 ABI 包含的信息五、.so文件的命名规范六、.so文件存放位置一、前言不同的Android手机使用不同的CPU,而不同的 CPU支持不同的指令集,CPU与指令集的每种组合都有专属的应用二进制接口,即 ABI。二、Android的CPU架构Android系统目前支持以下七种不同的CPU架构CPU架构描述时间ARMv5第5代 ARM v5TE,使用软件浮点运算,兼容所有ARM设备,通用性强,原创 2020-07-30 11:24:08 · 2987 阅读 · 0 评论 -
Unity移动应用如何在Bugly上查看崩溃堆栈
文章目录一、使用Bugly对移动应用进行崩溃监控二、我们看到的崩溃堆栈1、Java崩溃2、Native崩溃一、使用Bugly对移动应用进行崩溃监控Unity项目中接入了腾讯的Bugly,通过Bugly后台,我们可以对移动应用进行异常监控、崩溃分析等。Bugly官网: https://bugly.qq.com/v2/index二、我们看到的崩溃堆栈1、Java崩溃这种情况我们可以比较完整的看到java的调用堆栈,比较好定位问题。2、Native崩溃这种情况的奔溃,如果没有上传符号表,我原创 2020-07-30 09:01:52 · 4604 阅读 · 6 评论 -
Android的.dex、.odex与.oat文件扫盲
文章目录一、前言,发现新玩意二、.dex、.odex与.oat文件介绍1、dex文件2、vdex文件3、odex文件4、oat文件一、前言,发现新玩意最近Unity项目打出的Android包在红米Note4真机上运行闪退了,查看日志如下:07-28 17:56:49.623 7368 7368 D YSDK d.OnSupport: Device OAID loadSuccesstrue07-28 17:56:49.623 7368 7416 F libc : Fatal signa原创 2020-07-29 17:37:46 · 19810 阅读 · 0 评论 -
Android使用adb logcat时日志中文乱码问题,使用chcp 65001设置编码即可
adb logcat日志乱码问题使用adb调试Andoid的查看日志的时候,发现中文日志乱码,如下关于adb调试Android查看日志的方法,参见为这篇文章:https://blog.csdn.net/linxinfa/article/details/104578095乱码原因这是因为CMD默认字符集是ANSI,中文环境下即为GBK,代码页为936。而Android中使用的是UTF-8字符。查询当前代码页的方法为在CMD下直接输入chcp命令解决办法只要使用UTF-8格式的代码页650原创 2020-07-27 16:48:05 · 4288 阅读 · 0 评论 -
Unity获取系统信息SystemInfo(CPU、显卡、操作系统等信息)
文章目录一、SystemInfo.deviceModel二、SystemInfo.deviceName三、SystemInfo.deviceType四、SystemInfo.deviceUniqueIdentifierSystemInfo.graphicsDeviceIDSystemInfo.graphicsDeviceType五、SystemInfo.graphicsDeviceName六、SystemInfo.graphicsDeviceVendor七、SystemInfo.graphicsDevice原创 2020-07-23 10:27:47 · 11446 阅读 · 2 评论 -
javac编译原理和javac命令行的使用
文章目录一、前言二、Javac编译原理二、javac命令的使用1、只有一个java文件的情况2、有多个java文件的情况3、有依赖jar包的情况4、Unity中使用javac编译渠道sdk的java文件一、前言在缺乏eclipse和AndroidStudio等IDE工具的情况下,可以使用jdk自带的javac命令编译java项目。二、Javac编译原理javac工具读由java语言编写的类和接口的定义,并将它们编译成字节代码的class文件。流程如下:java源代码 --> javac–&原创 2020-07-07 09:40:00 · 1119 阅读 · 0 评论 -
Android签名证书:jks和keystore
jks与keystorejks是在android studio里面生成的签名证书。keystore是eclipse里面生成的。两者在使用方式上没有什么区别,但是在算法上有一点点区别。jks转keystore很多第三方市场,我们上传apk的时候,他们只支持keystore,需要我们把.jks签名转化为.keystore。直接用命令行,先生成.p12文件,用p12生成keystore。keytool -importkeystore -srckeystore D:\test.jks -srcstor原创 2020-06-30 17:34:19 · 5074 阅读 · 0 评论 -
Unity打包报错Ignoring InnerClasses attribute......
问题Unity打包Android报错,在Converting Java classes to dex-format的时候提示Unable to convert classes into dex format. See the Console for details.日志输出如下stderr[warning: Ignoring InnerClasses attribute for an anonymous inner class(xx) that doesn't come with anassoc原创 2020-06-28 15:23:25 · 708 阅读 · 0 评论 -
Unity接入华为SDK
华为SDK下载:https://developer.huawei.com/consumer/cn/service/hms/catalog/HuaweiJointOperation.html?page=hmssdk_jointOper_sdkdownload原创 2019-04-01 17:44:07 · 9774 阅读 · 18 评论 -
支付宝支付返回resultStatus:4000(系统繁忙,请稍后再试)
问题项目中介了支付宝支付sdk,最近测试发现调用支付宝支付接口返回失败,无法拉起支付页面,接口调用代码如下m_activity.runOnUiThread(new Runnable() { @Override public void run() { PayTask alipay = new PayTask(m_activity); Map<String, String> result = alipay.payV2(orderInfo, true原创 2020-06-08 18:07:37 · 7650 阅读 · 0 评论 -
Android support v4、v7、v13、v14、v17和其他support库免费下载
文章目录一. 前言二.下载1 android-support-v4下载2 andorid-support-v7下载3 andorid-support-v13下载4 andorid-support-v14下载5 andorid-support-v17下载6 support-wearable下载7 support-transition下载8 support-vector-drawable下载9 support-tv-provider下载10 support-media-compat下载11 support-fr原创 2020-06-02 08:52:58 · 8849 阅读 · 7 评论 -
使用Android Studio下载Android Support库(support v7)
在Android Studio安装目录下,有个SDK Manager.exe双击运行,选择Android Support Repository,下载或更新即可然后就可以看到下载到本地的各个版本的support的jar包了原创 2020-06-01 19:40:51 · 9742 阅读 · 0 评论 -
[WebView坑]Calling View methods on another thread than the UI thread
问题最近接搜狗sdk,调用支付接口的时候闪退,报错java.lang.IllegalStateException: Must be called from main thread of process于是放到runOnUiThread中调用m_context.runOnUiThread(new Runnable() { @Override public void run() { // TODO 搜狗pay }});可以拉起支付了,主Activity跪了,从支付宝的WebVi原创 2020-05-28 09:12:11 · 2195 阅读 · 0 评论 -
Java Runnable线程传参,让run访问参数
前言做Android开发,可能经常要用到Runnable线程,有时候可能需要传参数进去,然后在run函数中取出参数使用。解决办法自定义一个接口,继承Runnable,新增一个传参方法public interface MyRunnable extends Runnable { public MyRunnable setParam(String... param);}实现这个自定义接口MyRunnable sendMessage = new MyRunnable() { Strin原创 2020-05-27 09:12:12 · 4812 阅读 · 0 评论 -
一分钟小科普,Android签名
Andriod应用程序如果要在手机或模拟器上安装,必须要有签名!签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装)。签名的步骤 a.创建key b.使用步骤a中产生原创 2016-12-16 14:30:12 · 513 阅读 · 0 评论 -
adb迷你调试工具,方便调试android模拟器和android真机查看日志
文章目录一. 前言二. 下载三. 使用1 开启USB调试2 打开cmd3 查看连接的设备4 查看日志一. 前言做游戏开发,遇到一些闪退bug,只能进行模拟器调试或者真机调试,android应用,可以用eclipse或者android studio可以查看运行的日志,从而定位闪退问题。不过eclipse或者android studio都太重了,启动要等半天,而且还很占电脑内存,杀猪用牛刀。这里,给大家福利一个迷你的adb工具,压缩包只有421KB。一行命令即可调试输出真机日志。二. 下载迷你的ad原创 2020-05-13 16:30:55 · 2046 阅读 · 4 评论 -
Android9 http网络权限问题无法访问(辅助标签:usesCleartextTraffic)
android9.0系统默认禁止http协议,即禁止明文传输,必须使用https来通讯;而工程中,可能还有一些地方使用http。在AndroidManifest.xml的application中添加如下一条属性即可:android:usesCleartextTraffic="true"...原创 2020-04-21 11:31:29 · 5241 阅读 · 0 评论 -
Unity微信分享如何关联邀请者与被邀请者之间的关系
文章目录一. Unity接入微信开放平台sdk二. UnionID1. 接口:2. 参数说明3. 返回说明三. 如何关联一. Unity接入微信开放平台sdkhttps://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/Android.html二. UnionID微信开放平台同一个开发者账号下,只要是同一个微信...原创 2020-03-13 21:25:51 · 1044 阅读 · 0 评论 -
Unity升级YSDK到1.5.9注意事项(辅助标签aar、androidx、oaid)
文章目录一. 前言二. 下载YSDK三. 解压ysdk-release.aar1. jar文件2. assets目录3. jni目录4. res目录四. YSDKRes目录五. AndroidManifest.xml六. 与MSA移动安全联盟的sdk冲突一. 前言Unity项目之前接了YSDK,后面提审的时候,说要升级YSDK到1.5.9版本。二. 下载YSDKYSDK下载地址https...原创 2020-03-12 14:02:08 · 1745 阅读 · 19 评论 -
AndroidX的库在哪里下载(AndroidStudio)
AndroidXAndroidX 是对 android.support.xxx 包的整理后产物。由于之前的 support 包过于混乱,所以,Google 推出了AndroidX。在后续版本中,会逐步放弃对 support 的升级和维护,所以,我们必须迁移到 AndroidX 。如何迁移到AndroidX在 AndroidStudio 3.2 或更高版本(截图中 AndroidStudio...原创 2020-03-12 11:36:02 · 7108 阅读 · 1 评论 -
Android提示"很抱歉,xxx已停止运行":Application中onCreate执行多次
问题游戏发布了vivo版本的包,发现一个问题,运行游戏后,过一会儿会弹出一个“停止运行”的弹框定位问题通过ADB调试,发现了异常的日志:--------- beginning of crash03-09 16:14:04.063 E/AndroidRuntime(12365): FATAL EXCEPTION: main03-09 16:14:04.063 E/AndroidRunt...原创 2020-03-09 17:00:24 · 2443 阅读 · 0 评论 -
ADB命令连接模拟器并查看安卓日志(逍遥模拟器、夜神模拟器)
先进入逍遥模拟器安装目录(MEmu文件夹下),如:D:\software\Microvirt\MEmu在CMD下输入:adb connect 127.0.0.1:21503连接成功后,再输入adb logcat -v time即可实时看到安卓的日志了如果想把日志保存到文件,则可以这样adb logcat -v time >.\\logcat.log如果想清除日志,则...原创 2020-02-29 17:35:59 · 8809 阅读 · 0 评论 -
app内执行apk安装报错:exposed beyond app through Intent.getData()
文章目录一. 问题: app内执行apk安装报错:exposed beyond app through Intent.getData()二. 解决方法1. AndroidManifest中增加FileProvider配置2. res目录下新建```xml/filepaths.xml```3 java代码:使用FileProvider兼容安装apk一. 问题: app内执行apk安装报错:expo...转载 2020-01-14 16:35:20 · 5092 阅读 · 2 评论 -
查看安卓APK文件证书(辅助标签:keystore、cert、keytool)
首先电脑上要安装jdk1. 有apk的情况,查看证书信息将apk文件复制一份,然后重命名为zip,将zip文件解压,拿到\META-INF\CERT.RSA文件keytool -printcert -file E:\xxx\xxxx\META-INF\CERT.RSA2. 有keystore的情况,查看证书信息keytool -list -v -keystore E:\xxx\xxx...原创 2020-01-13 17:25:27 · 5261 阅读 · 0 评论 -
Android挖孔全面屏显示适配
文章目录一. 全面屏二. 适配1. 在AndroidManifest.xml声明max_aspect值2. java中动态适配一. 全面屏全面屏是手机业界对于超高屏占比手机设计的一个宽泛的定义。全面屏手机屏幕的宽高比例比较特殊,不再是以前的16:9,比如三星的Galaxy S8屏幕分辨率是:2960×1440,对应的屏幕比例为:18.5:9。VIVO X20手机屏幕分辨率是2160x1080...转载 2020-01-08 13:51:52 · 10721 阅读 · 0 评论 -
Android8.0的Only fullscreen opaque activities can request orientation问题
项目接了应用宝的YSDK,上架后,用Android8.0登录QQ或使用拉起米大师支付的时候闪退,用AndroidStudio调试,报错日志如下2019-12-09 16:00:54.690 1166-1976/? E/WindowManager: win=Window{f978659 u0 com.tencent.tmgp.linxinfagame/com.tencent.tmgp.linxin...原创 2019-12-09 16:59:15 · 2840 阅读 · 0 评论 -
华为SDK实名认证
请广大开发者引导华为游戏用户完成实名认证https://developer.huawei.com/consumer/cn/notice/20191204/原创 2019-12-06 15:38:23 · 2235 阅读 · 0 评论 -
Android多渠道分包解决方案:向META-INF中塞入渠道信息(不用重签名)
一. 前言游戏要进行分渠道的推广,需要进行分包统计,如果挨个打包,或者执行批量重签名,如果渠道包很多,这个过程就会很耗时间,有一个办法就是在apk的META-INF文件夹中塞入渠道信息文件,运行的时候进行读取,不需要进行重签名,速度快。二. 在META-INF文件加重塞入文件把.apk改成.zip,用解压工具进入zip内部,可以看到有个META-INF文件夹往里面META-INF文件夹中...原创 2019-12-02 15:57:54 · 2459 阅读 · 0 评论 -
Unity打出apk后如何重签名的时候换图标
关于如何重签名,参见我之前写的这篇文章:https://blog.csdn.net/linxinfa/article/details/81066703想要支持重签名的时候更好图标,需要原来的AndroidManifest.xml中application节点配置android:icon,注意值不要配置"@drawable/app_icon",不然会用android默认图标例<applic...原创 2019-11-25 17:51:23 · 1016 阅读 · 0 评论 -
手机设备标识码(IMEI、MEID、UDID、UUID、ANDROID_ID、GAID、IDFA等)
Android篇1 IMEI和MEID(1) IMEI(International Mobile Equipment Identity) 是国际移动设备身份码的缩写,国际移动装备辨识码,只有Android手机才获取的到,是由15位数字组成的"电子串号",比如像这样 359881030314356,它与每台移动电话机一一对应,而且该码是全世界唯一的。它是GSM设备返回的,并且是写在主板上的,...原创 2019-11-05 13:58:18 · 73778 阅读 · 17 评论 -
Unity接华为SDK浮标显示问题
调用华为SDK浮标显示接口: HMSAgemt.Game.showFloatWindow(activity);没有显示,看了下日志,报了如下错误AndroidJavaException: android.content.res.Resources$NotFoundException: Resource ID #0x0android.content.res.Resources$NotFound...原创 2019-10-24 17:16:51 · 1378 阅读 · 0 评论