自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android GitHub 常用开源框架汇总

现在 GitHub 上流行的开源库极大地节省了开发者从 0 开发的时间,很多公司和个人都在 GitHub 上开源自己的项目,今天我们就来整理一下 Android 开发中一些非常流行的库,也是我们必须掌握的,这样可以使我们在使用到时快速的查找到,这里的总结基本也都是自己在开发中用到的,也就是一些个人的见解,只做参考,不具有权威性。一、网络库1. RetrofitRetrofit 是 Squar...

2020-01-06 13:58:43 334 1

原创 Root后安装Xposed框架卡Logo问题

1、概述为了抓包应用,于是root了手机,想绕过https的密钥验证,于是装了Xposed,然而装了Xposed之后重启手机,手机一直卡在开机Logo页面无法重启。为了能让手机能开机,我只能想办法卸载掉Xposed框架。于是我用下面的方法成功的让手机再次开机,在此记录一下,希望对你们有所帮助。2、刷入TWRP工具TWRP——TeamWin Recovery Project TWRP是一个很强...

2019-12-18 14:50:09 3284 9

原创 Android 锁屏状态下Dialog不显示问题

1、概述大家都知道系统自带的Dialog真的是很丑,所以很多时候弹框我们都需要自定义。然而最近做项目的时候,发现在三星Android 9.0和部分android 8.0的手机上,在锁屏状态下弹出的自定义Dialog只有半透明背景,没有内容。对这个问题刚开始也是一脸茫然,不知道怎么解决,因为网上也没有类似的问题,最后只能慢慢的试,看看是哪儿出了问题,最后发现该问题是因为使用的主题引起的。所以记录一...

2019-08-08 17:32:32 2380 3

原创 Android BLE disconnect()和close()的区别

1、概述现在的BLE都可以连接多个蓝牙设备,当我们使用BluetoothDevice.connectGatt()连接设备的时候,自然会想到使用BluetoothGatt.disconnec()断开连接,那么BluetoothGatt类的disconnect()和close()各有什么作用呢?下面我们一起来看看一看。2、disconnect()的作用从函数名可以看出,disconnect()是...

2019-08-05 19:33:12 3859

原创 Android Notification Intent传递数据为null

1、概述最近在使用通知的时候,给通知添加上了点击事件,然后通过通知的Intent来传递数据,打开不同的页面,展示不同的数据。一切都很简单的就完成了,可是当点击通知的时候并没有按照原来的想法展示,通过Debug发现通知的Intent并没有传递数据,所有的数据都是null。下面我们首先来看看我原来的代码是怎么样的,代码如下:val intent = Intent(context, WelcomeA...

2019-08-03 16:30:02 1831

原创 android 9.0 Intent卸载应用无反应问题

1、概述最近将以前的项目适配到android 9.0的时候,在9.0真机上运行,然后发现以前运行良好的卸载功能不能使用了,其实就是调用了以下方法没有任何的反应,也没有出现报错。/** * 卸载应用*/public static void uninstallPackage(Context context,String packageName) { Intent intent = n...

2019-08-02 18:02:02 1859 4

原创 Android support和Androidx库不能共存问题

一、问题描述今天升级了android studio3.4.1,导入以前的一个旧项目,并且升级了lottie-android动画库到最新版本3.0.3,编译发现出现如下报错:Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFa...

2019-05-23 15:50:51 22380 1

原创 Android Error: execution failed for task ':app:transformDexWithInstantRunSlicesApkForDebug'

1、概述今天将android studio更新到最新版本之后,将项目安装到手机上时,出现了Android Error: execution failed for task ':app:transformDexWithInstantRunSlicesApkForDebug’报错。查看了报错信息,从中知道是缺少slices.apk引起的,但是在build目录下面是存在该apk的,说明已经编译成功了,...

2019-05-21 13:44:27 819

原创 Android google map tile下载

1、概述最近在做项目的时候,需要用到google离线地图,但是google并没有提供离线地图下载的接口。通过在网上查找资料后发现,google的离线地图可以通过下载tile、然后在地图上添加tile来完成。下面我们一起来看看怎么下载google map tile。2、下载网址需要下载google map tile我们首先需要的就是下载地址,在此google为我们提供了四个下载的基础地址:...

2019-05-15 16:52:21 811

原创 Android studio File中不显示New Flutter Project

1、问题描述学习Flutter框架,第一步当然就是搭建开发环境了,搭建环境前面都很顺利,Flutter和大热天都已经在本地配置好了,Android Studio也安装了Flutter和dart插件,并且可以正常的编译Flutter项目,但是就是不能创建Flutter项目,在File->New里面没有New Flutter Project的选项,如下图所示:2、解决办法在网上很多人说这...

2019-03-05 17:35:42 1691 4

原创 Android 代码中动态修改shape的颜色

代码中动态设置shape的颜色其实挺简单,android为我们是提供了方法的,只是以前没有遇到这样的需求,所以也没有用过,现在记录一下以免忘记!1、首先,布局文件是这样的<View android:id="@+id/color_view" android:layout_width=&amp

2018-11-28 16:18:32 4324

原创 Android 蓝牙4.0 BLE问题总结

最近做蓝牙4.0相关项目的时候遇到了很多的问题,所以在此记录并总结一下。问题总结说明1、首先使用蓝牙必须先打开设备的蓝牙,android为我们提供了两种打开方式,强制打开和非强制打开,如下:/** * 强制打开蓝牙 */fun openBluetooth(): Boolean = mBluetoothAdapter!!.enable()强制打开:这种打开方式在绝大多数手机...

2018-07-13 16:19:32 1572

原创 android TextView加SpannableString设置点击某几个文字的问题

最近做项目使用TextView加SpannableString实现某几个字的点击事件,发现当要点击的文字是从某个位置开始到最后,这个时候点击最后文字后面的空白区域也会触发点击事件,但是我那儿没有设置点击事件啊,这是怎么回事呢?在网上找了很久也没有找到很好的解答,难道就只有我发现了这个问题?通过对源码的研究终于发现了问题的所在,下面看看怎么会出现这个问题和怎么解决吧。设置文字的点击事件我的测...

2018-05-18 15:33:41 3289

原创 mysql数据库问题,Access denied for user 'root'@'localhost' (using password: YES)

问题描述最近做项目时,在linux服务器使用mysql -u root -p进入mysql命令行时,出现Access denied for user ‘root’@’localhost’ (using password: YES)报错。# mysql -u root -pEnter password: ERROR 1045 (28000):Access denied for use...

2018-04-11 10:45:16 34571 2

原创 winSCP上传文件到服务器失败,提示permission denied,返回码3

问题说明在做项目是的时候,使用winscp上传文件到linux服务器时,出现permission denied的提示,并且错误的返回码是3。错误图如下: 从上面的错误中可以看出,文件上传失败是因为权限不足,因为我们连接到服务器是以普通用户连接的所以会权限不足,解决办法是以root用户连接服务器,这样就有权限上传文件了,那么怎么以root用户连接服务器了?下面我们一起来看一下吧!解决办...

2018-04-10 19:38:17 9319 3

原创 Android悬浮窗权限“android.permission.SYSTEM_ALERT_WINDOW”判断是否开启问题

最近在android 8.0上遇到了一个判断悬浮窗权限是否开启的问题,当在一个界面弹出dialog提示用户开启悬浮窗权限,用户点击之后,跳转到设置界面开启悬浮窗权限,然后返回该页面,使用google提供的android 6.0以及以后可以使用的接口Settings.canDrawOverlays(context) 进行权限开启的判断,结果返回的是false;程序接收到的是权限没有开启,但是到设置里

2018-02-04 17:26:48 19690 12

原创 android 8.0使用悬浮窗时,报错permission denied for window type 2007

最近项目做android O的适配的时候,在以前运行很好的悬浮窗界面却在android O及以上的版本中出现报错android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@7c6708 -- permission denied for window type 2007下

2018-01-26 15:07:55 13897 2

原创 Android 8.0透明Activity报错 "Only fullscreen activities can request orientation"

最近做项目的时候发现,当编译版本是27时,26以及以上版本的手机的透明Activity就会出现报错”Only fullscreen activities can request orientation”,所以记录下自己的解决办法。1、分析问题首先,我的代码是这样的: style.xmlname="app_transparent_activity" parent="Theme.

2018-01-22 15:15:42 11034 2

原创 Android使用正则表达式获取字符串

Android通过正则表达式从指定字符串中,获取满足正则表达式的所有字符串,下面我们来看看怎么实现?正则表达式获取字符串用正则表达式从一个字符串中取出所有满足正则表达式的字符串,代码如下:/*** 获取所有满足正则表达式的字符串* @param str 需要被获取的字符串* @param regex 正则表达式* @return 所有满足正则表达式的字符串*/private ArrayL

2017-12-08 16:43:01 6443

原创 Android App首次安装完成后在安装界面直接打开应用,再按home键返回桌面,从桌面图标重新进入app,返回不到之前的界面问题

概述在做项目的时候遇到了,Android App首次安装完成后在安装界面直接打开应用,再按home键返回桌面,从桌面图标重新进入app,返回不到之前界面的问题;然而有一次完全退出应用后,这个问题就会消失。然后各种检查代码觉得都没有问题,后面通过对任务栈的实验发现,这是因为从安装界面打开App,和从桌面打开App的任务栈不一样。导致了按home键退出后,从桌面图标重新进入回不到之前按home键的页面。

2017-11-17 17:59:57 3573

原创 Android 判断应用是否安装

方法一使用抛出异常的方式判断,通过包名获取app的信息,当app不存在时,会抛出NameNotFoundException 异常,我们通过对异常的捕获,从而判断是否安装了该应用,代码如下:private boolean checkAppInstalled(Context context,String pkgName) { if (pkgName== null || pkgName.isEmp

2017-11-09 16:55:56 9018

原创 Android Palette使用详解

最近做项目,需要将图标的颜色设置为背景颜色,这时就用到Palette获取图标的颜色,然后进行背景的设置,从而达到图标和背景颜色协调的作用。下面我们来看看Palette怎样使用的?1、获取Palette对象获取Palette有两种方法,同步和异步获取,但是一般使用异步获取,下面我们看看这两种方法:(1)同步获取Palette palette = Palette.from(bitmap).generat

2017-10-23 15:22:51 2875

原创 Android 获取应用的icon、名字、版本号

Android 获取应用的icon、名字、版本号1、获取应用的icon代码如下:/** * 根据包名和类名获取App的icon * * @param pkgName 包名 * @param className 类名 */public static Drawable getAppIcon(Context context, String pkgName, String className

2017-09-29 16:33:45 11761

原创 Android 获取手机状态栏高度

Android 获取手机状态栏高度在实际的开发过程中,有时候我们可能会需要知道状态栏的高度,虽然状态栏的高度基本上都是固定的,但是为了更加准确的得到状态栏的高度,我们可以通过代码实现,但是google并没有提供相应的API,那我们该怎么样获取了?下面我们一起来看看吧!代码如下:/** * 获取手机状态栏的高度 * * @return 状态栏的高度 */public static int g

2017-09-29 15:20:28 3106

原创 Android 获取屏幕宽高,dp、px、sp互转

Android 获取屏幕宽高,dp、px、sp互转在Android日常开发中,我们肯定都要做界面适配,这时候我们可能会需要知道屏幕的宽高和常用单位之间的转换,下面我们一起来看看,宽高如何获取,常用单位之间如何转换的。1、获取屏幕宽高代码如下:/** * 获取屏幕的Size * * @return point.x:屏幕宽度 point.y:屏幕高度 */public static Point

2017-09-29 14:46:18 1085

原创 Android 安装apk

Android 安装Apk在开发过程中,很多时候都需要我们的应用安装Apk,其实这很简单的,但是其中还是有一些坑,所以记录下。权限要让我们的应用能够安装Apk,我们要在AndroidManifest.xml 中添加android.permission.REQUEST_INSTALL_PACKAGES 权限,而且用户必须要开启“未知来源”权限。在Android 8.0以前,“未知来源”权限是针对所有应

2017-09-21 15:29:34 1245

原创 Android 自定义圆形头像

Android 自定义圆形ImageView先上效果图,如下: 这是有边框的圆形ImageView的效果图,如果想没有边框或者改变边框的颜色都可以通过代码进行设置,下面直接上代码:package com.example.admin.viewtest;import android.content.Context;import android.content.res.TypedArray;impo

2017-09-20 15:21:49 902

原创 Android 获取应用总大小

Android 获取应用总大小本文的所有代码都是用kotlin写的,但是原理都是一样的。一个应用的总大小,包括应用大小、用户数据和缓存。这些数据我们该怎样获取了,下面我们一起来看一看!Android 8.0以前的获取方法在Android 8.0以前获取应用的总大小,google没有提供对应API,但是我们可以通过反射来获取,代码如下:fun getAppTotalsize(

2017-09-15 14:59:33 7091 8

原创 Android 5.0 应用使用情况统计信息

Android 5.0 应用使用情况统计信息概述在Android 5.0以前,我们使用ActivityManager.getRecentTasks()方法来获取最近使用过的应用程序信息集合,此方法不需要用户授权,任何应用都可以获取用户最近使用应用的信息,出于更好的保护用户的隐私,在Android 5.0 及以后google废除了此方法。但是为我们引入了信息更详细的android.app.usage

2017-09-14 17:49:20 5370 1

原创 Android kotlin实现自定义水波纹效果

Android kotlin实现自定义水波纹效果最近做项目需要用kotlin实现一个水波纹效果,所以自己写了一个,怕以后忘记所以上来总结和分享一下,希望对大家也有帮助!不说废话了,直接上代码,在代码里面都加了注释,相信大家一看就懂了!下面是水波纹自定义view的全部代码:/** * Note:水波纹 * * * Author: you * * Date : 2017/7/20 */cl

2017-09-14 16:45:38 603

自定义水波纹

该资源是使用kotlin语言实现的Android自定义正余弦水波纹View,该自定义view你可以自由的设置水波纹的周期、振幅、和颜色

2017-09-14

空空如也

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

TA关注的人

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