- 博客(57)
- 资源 (6)
- 收藏
- 关注
原创 Android Log日志管理
使用Timber源码地址:https://github.com/JakeWharton/timber在build.grade中引入Timber:implementation 'com.jakewharton.timber:timber:4.7.0'在自定义Application中:if (isDebug()) { Timber.plant(new DebugTree());} else ...
2020-08-12 18:37:19
369
原创 Android 单元测试 Mockito 官方代码 BasicSample 解析 从零开始
下载google的代码:https://github.com/android/testing-samples/tree/master/ui/espresso/BasicSample下载我的代码:https://github.com/zhoulingluo/AndroidTest.git题外话:看google是怎么获取和读取SharedPreferences/** * 保存一个对象 */public boolean savePersonalInfo(SharedPreferenceE...
2020-08-12 18:35:25
378
1
原创 数组之间相互转化
Integer[] aa=new Integer[]{2,4,5,8};Float[] bb=(Float[]) (Arrays.asList(aa)).toArray(new Float[0]);
2019-12-06 16:31:10
379
转载 Android 获取View的坐标位置
前言获取 View 坐标在 Android 开发中非常常见。今天carson将详细给大家讲解 获取 View 坐标常用6种方式:getLeft()、getTop()、getRight()、getBottom() getX()、getY()、getRawX()、getRawY() getLocationOnScreen() getLocationInWindow() getGloba...
2019-10-25 09:37:05
12466
转载 ArtiFactory配置自己的远程连接库
由于公司项目需要,现需要将一些公用的工具、组件、封装至Maven 仓库,以提供于其他项目的使用,避免复制粘贴的出现。众人拾柴火焰高。这样经过大家共同的努力,从而是该工具库变得更加的完善和健壮。为此使用ArtiFactory,当然也可以使用Bintray。亦是公司需要,使用ArtiFactory。现做出记录:因为该工具的使用,需要使用Java JDK 1.8 以上,所以,在使用之前我们先检...
2019-10-14 20:12:22
1058
转载 Android Canvas的drawText()和文字居中方案
我自己总结:很重要1.我们总是设置居中 ,获取文字长度太麻烦2.默认的基准点是在左下角(leftbuttom,baseline),我们要把它放中间就好了3.x的好找 背景的中心,y 因为是baseline 也是中心 加上一点距离到baseline4.Paint bgRect=new Paint(); bgRect.setStyle(Paint.St...
2019-06-16 13:52:11
1509
原创 databinding ImageView src 无效 TextView background 无效
1.<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@{safeUnbox(viewModel.previewBg)}"/><TextView android:id="@+id/button_...
2019-05-20 16:35:01
1510
原创 seekbar 无法设置高度minHeight 无效 和 通用的进度条背景
<!-- seekbar 样式--><style name="tallerBarStyle" parent="@android:style/Widget.SeekBar" > <item name="android:indeterminateOnly">false</item> <item name=&am
2018-06-13 12:05:49
2862
转载 Databinding 使用
第一:https://blog.youkuaiyun.com/qby_nianjun/article/details/79198166一、Databinding简单尝试 首先在Module app下build.gradle中配置databindingandroid{ ... dataBinding { enabled true } ...}1234...
2018-06-12 11:19:01
768
原创 ConstraintLayout 所有属性
1、基础值(以下是经常用到的值,很有规律)layout_constraintLeft_toLeftOf :当前View的右侧和另一个View的右侧位置对齐,与RelativeLayout的alignLeft属性相似***layout_constraintLeft_toRightOf ***:当前view的左侧会在另一个View的右侧位置 与RelativeLayout的toRightOf属性相似l...
2018-06-08 19:53:31
6600
原创 获取最顶端的Top Activity和类名
1.我找了很多方法,以下是 《1》5.0之后 获取top activity 很多方法停用,用是可以用,但是有些条件下 获取是异常的,比如我这个是断网情况下,获取是异常的,我之前用的 是public String getTopActivityPackageName(Context context) { String topActivityPackage = null; Act...
2018-05-26 18:36:41
9160
原创 Retrofit 网络请求框架
1.首先我一开始使用的是Okhttp,后来要更新框架,我做了比较,决定还是用Retrofit。 Okhttp:适用那种大数据网络请求 Retrofit:频繁操作的网络请求 所以我们的请求大多都不是很大的,我就决定用Retrofit,再说Retrofit是在Okhttp进行一步封装,怎么样也应该比Okhttp好很多的,还有就是Retrofit和RxJava可以很好结合,所以就用Retro...
2018-05-05 14:33:54
184
原创 Android 读写U盘 的工具类
1.首先说一下问题,读取U盘里面的值是可以的,但是写的时候就会报错,是没有权限 报错 Permission denied2.首先看到这个问题,搜索,得出 运行时权限3.但是我想了想,我获取U盘值的时候没有出现,所以我读取的时候也不应该出现暂时排除运行时权限4.再搜索,大部分都是要获取到root权限,要么就是更改底层,我这边不能更改底层5.再搜索,找到一个插件。具体步
2018-03-21 17:32:11
4804
5
翻译 Greendao 升级 数据丢失 数据迁移
最近更新:2018年3月6日18:47:26因为数据库添加字段,所以我就把 src中的schemaVersion +1,签完名之后测试,发现以前所有数据丢失了,顿时一身冷汗,太可怕了。之后在网上找资料发现DaoMaster中onUpgrade中 代码是:dropAllTables(db, true);onCreate(db);所以每次升级,都是先把所有表都删了,重新创建,这怎么可以,侮辱Gree...
2018-02-02 11:16:05
1310
原创 as 编译时提示error please select android sdk
在app/app.imlorderEntry type="jdk" jdkName="Android API 27 Platform" jdkType="Android SDK" />
2018-01-16 17:29:15
409
原创 couldn't find so
1.我的app直接运行在设备上是可以使用的。2.app 放入system/app就一直报错,couldn't find ****.so。3.解决办法:3.1 首先导出第一个签了名的apk1。3.2 拷贝apk1拷贝成apk2.3.3 修改apk2后缀,为zip3.4 解压这个zip,看里面的lib3.5 把里面所有的lib push到system/lib中3.6 把
2018-01-06 15:08:39
552
原创 layout转化bitmap 显示不出来
1.View v = getLayoutInflater().inflate(R.layout.activity_report_print, null);int width = 3580;int height = 2408;Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);Canvas c
2018-01-02 18:04:16
1007
原创 'com.android.application' not found
1.方法build.gradle(Project: )修改dependencies中classpath 'com.android.tools.build:gradle:2.2.0'你自己的gradle的版本号,查看自己的版本号是: Terminal(在工具下方LOGO旁边 旁边) —> gradle -v (前提是配置了环境变量) 可以参考http://blog.csdn.
2017-12-14 10:59:23
1316
原创 android-apt plugin is incompatible with the Android Gradle plugin. Please use 'annotationProcessor'
根据网络的解决方法是:一、把project目录下的build.gradle中的classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8'删除掉;二、把具体Module目录下的build.gradle中的apply plugin: ‘com.neenbedankt.android-apt’删除;三、同时把dep
2017-11-27 11:57:49
8314
2
原创 UnsatisfiedLinkError: dalvik.system.PathClassLoader
头疼主要的话是这是因为应用工程中lib文件夹下面有armeabi和armeabi-v7a等多个目录(分别对应不同的CPU平台),安装时,会根据不同CPU平台把对应的lib下的so文件拷贝到手机的指定分区中。 自己的lib里面明明就是有的,报这个错误,我就认真看了,lib是在armeabi-v7a里面的,开始是:ndk { abiFilters 'armeabi'
2017-10-24 16:27:57
368
原创 Android SufaceView 截图
首先错误的现象是你的代码显示不出来截图,可能显示的是黑色也可能是你父控件的背景的颜色,方正结果就是出不来截图。说一下原理吧,SufaceView有双缓冲机制,有个front buffer,一个back buffer也就是说有两个图,一个在前面界面显示,一个在后面准备,front buffer显示,back buffer就准备图片,这样就变得很快了是不是。我们一直截图获取得到的黑屏或者背景色,就
2017-10-19 16:54:37
541
原创 Android 获取FPS
下面是代码,主要是new了FPSMeter之后 要循环调用fpsMeter.mesureFps(),想调用一次是不可能的。public class FPSMeter { //获得格式化类对象 DecimalFormat mdt; private int mFrameCount; private long mLastTime; private int mFps;
2017-10-18 20:31:15
1605
转载 android 反编译
转载请注明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/23564065开发的过程中,有时候可能会去使用别的app里面的图片,参考布局甚至代码等,但是一般的.apk都是经过代码混淆的,这里分享下使用一些工具进行反编译.apk文件,主要就是软件的分享和教大家如何使用。1、android-apktool 主要是进行
2017-10-13 10:32:15
277
原创 android 打印 demo
1.首先说一下,网络上的打印全部都是热敏打印,就是pos机的打印,而我的是有线连接打印机,所以不使用。2.你要打印,你首先要看看你打印机是不是有打印插件,HP和三星都是有自己的的打印插件,我用的是HP,在360平台搜索打印插件,就出来了,你必须安装他们的插件,不然打印不了。3.就是代码了,一下是http://blog.youkuaiyun.com/sahadev_/article/details/
2017-09-19 21:08:30
2911
转载 androidstudio Parcelable
一、前言相信数据序列化大家都多多少少有接触到,比如自定义了一个实体类,需要在activity之间传输该类对象,就需要将数据序列化。Android中实现方式有两种,第一、实现Serializable接口,这种比较简单,直接声明就好;第二种,实现Parcelable接口,这种方式就比较复杂,往往需要写多些代码去实现,不过效率就比较高,还是值得推荐这种方式。那么,现在问题来了...因为实
2017-09-01 11:45:27
553
原创 Android 熄屏
网上全是:PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); PowerManager.WakeLock wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "TAG"); //屏幕会持续点亮 wakeLock.acq
2017-08-31 17:59:34
987
原创 Android 锁屏
1.在Activity中:final static int ENABLE_ADMIN = 1;final static int SUCESS = -1;private ComponentName mAdminName = null;onCreat中mAdminName = new ComponentName(this, AdminManageReceiver.class);Devic
2017-08-31 17:54:33
296
原创 Android dimens 生成类
1.开始写了几十个 ,真的太累了,还是写一个方法吧,我直接在我的onCreat里面写的。2.上代码,final Resources resources=getResources();new Thread(new Runnable() { @Override public void run() { String str = ""; fo
2017-08-16 13:36:59
632
原创 android 检测USB是U盘还是外设
1UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE); HashMap deviceList = manager.getDeviceList(); Iterator deviceIterator = deviceList.values(
2017-07-28 17:59:15
5483
4
原创 android jni
以前做的BLE,现在做串口通信,说说自己的经验。1、首先你要有串口通信代码 ,也就是C/C++的代码,网上有很多android_serialport_api,我也上传一个,方便使用,咦!~ 好像不行,没有办法了 ,只有你们自己下载了。2、添加 SerialPort 类在网上找到 SerialPort 的 Java 类,添加到项目中。package com.xd.
2017-07-27 19:21:16
522
原创 android 检测网线连接
1.实用与平板和TV 的android设备2.IntentFilter wifiDeviceStateFilter = new IntentFilter();//网络wifiDeviceStateFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);registerReceiver(wifiBroadcastReceive
2017-07-05 20:38:07
887
原创 android USB插拔检测
原文地址:http://blog.youkuaiyun.com/hetangbian/article/details/50800807这里是可以检测一些可以操作的USB设备,比如U盘,打印机等,像鼠标是检测不出来的。IntentFilter usbDeviceStateFilter = new IntentFilter();usbDeviceStateFilter.addAction(U
2017-07-04 16:53:01
2414
3
原创 android 公共顶部栏
以下代码写在baseActivity中,下面这种方式是LinearLayout,你也可以改成RelativeLayout,当时顶部始终在第一个界面,你可以 在setContentView的后面再加/** * group : 爷爷(findViewById(android.R.id.content);android.R.id.content是Android内部提供的每一个活动的根布
2017-07-04 14:53:41
332
原创 androidstudio 连接打印机
我这里连接的是打印机,不是小票机,大家看清楚了,目前我连接的是Hp 1112这个是可以的。首先 要下载hp的插件,android设备和打印机相连,android4.4以后,当然也可以修改底层,这个我不会,所以在只能在表层做一点,下载hp插件:Hp Print Service插件(这个在360手机助手里面有)下载安装就可以在设置里面的打印看到HP Inc. 就是它了。就不管了,进行下面操
2017-06-29 18:06:22
3667
1
转载 Android中AsyncTask使用详解
版权声明:本文为博主原创文章,未经博主允许不得转载。如果觉得文章不错,记得顶一下!GitHub: https://github.com/iSpring原文地址:http://blog.youkuaiyun.com/iispring/article/details/50639090在Android中我们可以通过Thread+Handler实现多线程通信,一种经典的使用场景
2017-06-29 13:50:13
277
转载 Butter Knife 详细使用
http://blog.youkuaiyun.com/johnny901114/article/details/52662376 一、概述JakeWharton我想在Android界无人不知,无人不晓的吧, ButterKnife这个框架就是出自他只手。这个框架我相信很多人都用过,本系列博客就是带大家更加深入的认识这个框架,ButterKnife截至目前已有1w+的star:
2017-06-23 16:02:44
776
原创 AndroidStudio fetching document
我是win7的在C:\Users\username\.AndroidStudio2.3\config\options找到jdk.table.xml 并把它拖到AndroidStudio中 找到javadocPath> roottype="composite"> roottype="simple"url="这里是google的文档地址" />
2017-06-22 11:55:45
530
转载 android 框架
来自:杨超凡_金诚先生 APP架构师一.榜单介绍排行榜包括四大类:单一框架:仅提供路由、网络层、UI层、通信层或其他单一功能的框架混合开发框架:提供开发hybrid app、h5与webview结合能力、web app能力的框架企业级开源项目:可以独立运行的app,有极高的学习价值、思路借鉴意义书籍类开源项目:类似Open-sourc-proje
2017-06-22 09:41:15
556
原创 android 内部存储 更新apk
我这里是 更新用的的,不说多的 上源码:public class DownloadUtil { private final String TAG="DownloadUtil"; private static DownloadUtil downloadUtil; private final OkHttpClient okHttpClient; privat
2017-06-21 12:03:26
939
转载 AndroidStudio 优秀的第三方数据库 GreenDao
原文:http://blog.youkuaiyun.com/ldld1717/article/details/72818917greenDAO是一款面向Android的轻便快捷的ORM,可将对象映射到SQLite数据库。 针对android进行了高度优化,greenDAO提供了出色的性能并消耗了最少的内存。 GitHub地址:点击打开链接 GreenDao的
2017-06-13 14:52:41
1582
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人