![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓技术
today_work
一名小码农,请各位多多指教。
展开
-
Ubuntu(16.0.4)上编译android8.0源码(资料最全版本)
前言:首先,安装linux系统,我们需要一个虚拟机,然后再把linux系统安装到虚拟机上。才完成一个能正常运行和工作的环境。为什么选择ubuntu版本的linux系统?总所周知,Linux有非常多的发行版本,从性质上划分,大体分为由商业公司维护的商业版本与由开源社区维护的免费发行版本。不同Linux版本系统选择:Debian:一般来说Debian作为适合于服务器的操作系统,它比Ubuntu要稳定得多。开源资料少Ubuntu:Ubuntu是一个以桌面应用为主的Linux操作系统 (因此linux系原创 2020-10-13 14:29:13 · 2079 阅读 · 2 评论 -
org.gradle.execution.MultipleBuildFailures: Build completed with 1 failures. 无法删除build文件
有时候android studio莫名其妙会出现如下报错,提示无法写入XXX.class类,然后报错无法删除build文件Error:Execution failed for task ':kuihuajingyingwang:clean'.> Unable to delete directory: F:\ProjectCode\KuiHua\branches\KuiHuaJingYingWang\kuihuajingyingwang\build\intermediates最终也是最有效的原创 2020-05-08 18:18:04 · 4032 阅读 · 0 评论 -
Android中Activity和AppcompatActivity的区别(详细解析)
继承AppCompatActivity的界面。 如下图所示: copy界面代码public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate...原创 2018-02-09 16:58:56 · 110261 阅读 · 13 评论 -
AndroidStudio3.0版本无法输入中文的问题解决方案
本文主要解决升级AS到3.0后中文输入法无法输入中文的问题。首先看下studio环境下无法输入中文的状态: 解决前的问题: 解决后: 所以下面简单说下我的解决办法: 将AS安装目录下的jre文件替换掉,我以前2.2.3版本的没出现过该问题,所以我将以前2.2.3版本jre文件夹替换到3.0版本的目录下jre文件夹,然后重新启动studio就可以了: 最后圆满解决了该问题。参考文献:http原创 2018-01-30 15:26:40 · 9797 阅读 · 0 评论 -
android.view.WindowManager$BadTokenException: Unable to add window-permission denied 完美兼容8.0的系统
问题,从问题反馈看就是 window type权限拒绝导致,我的dialog设置的type为 mWindow.setType((WindowManager.LayoutParams.TYPE_SYSTEM_ALERT)); 安卓6.0及以后该权限需要手动申请,且清单文件注册该权限 第一步: <uses-permission android:name="android.permission.SY原创 2018-03-15 15:23:06 · 736 阅读 · 0 评论 -
Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease 问题处理
解决AS混淆时出现的错误: Execution failed for task ‘:app:transformClassesAndResourcesWithProguardForRelease’ 具体如下图所示: 有4个warning,提示在 Common_SurfaceView类中找不到setZOrderMediaOverlay(boolean)方法,于是查询整个项目发现并无使...原创 2018-03-01 19:59:46 · 11977 阅读 · 0 评论 -
解决android频繁弹出吐司问题
如图所示,修改之前:修改之后: 解决方案: 通过判定吐司是否为null,如果为null那么重新创建一个新的Toast,否则直接引用以前的。很简单吧。public class ToastUtil { private static Context context = null; private static Toast toast = null; ...原创 2018-02-23 16:25:28 · 1719 阅读 · 0 评论 -
一招叫你如何绘制图片跟着手势滑动
首先看下效果图: 1,实现指定区域内触摸后显示图片,超出指定区域则不显示图片 2,滑动时超过指定区域,不显示图片 3,手指放开,图片隐藏,手指触摸图片显示 实现逻辑,自定义一个view,通过onTouchEvent事件,判定触摸的坐标,然后不断调用invalidate方法绘制图片实现,逻辑非常的简单。代码也是非常的简单。 贴核心代码package com.hitv.dialogd...原创 2018-03-16 19:34:26 · 9829 阅读 · 0 评论 -
INSTALL_FAILED_TEST_ONLY
用adb命令行安装apk时会提示你“INSTALL_FAILED_TEST_ONLY”错误,这句话的意思就是,安装失败,这个apk是测试apk; 解决办法:执行pm install -t /sdcard/xxx.apk 即可。 注意 -t 表示安装测试apk -r 表示重新安装,即使已经存在了也会重新安装原创 2018-04-28 22:32:59 · 247 阅读 · 0 评论 -
Sqlite数据库Cursor实现分页查找,顺序排序,模糊查找,精确查找,多列同时排序
Uri uri = Uri.parse(“content://xxxx”); projection=null;//如果为null表示可以查询到所有列的数据,{“genre”,”t_year”,”country”}//表示可以查询到genre,t_year,country这三列的数据。其他列数据就获取不到 selection=genre like? and t_year like? and cou原创 2018-05-08 13:57:01 · 1941 阅读 · 0 评论 -
adb.exe 已停止工作 频繁弹窗问题
问题提示(我当时候没有截图暂用网上的,内容有点不同,我的弹窗只有关闭程序这一个选项): 用adb命令总是报错 怀疑端口被占用,于是查询端口,用netstat -ano|findstr 5037命令查询5037端口被那些程序占用。 发现都是adb并没有其他程序被占用。于是kill掉发现kill不掉,后来直接在任务管理器关闭adb进程,结果奇迹出现了,问题得到了解决。原创 2018-02-02 11:44:36 · 8631 阅读 · 1 评论 -
query和rawQuery的区别
12px;”>Cursor cursor = db.rawQuery(“select name from *** where id=?”, new String[]{“1”}); Cursor cursor = db.query(”***”, new String[]{“name”}, “id=?”, new String[]{“1”}, null, null, null); 上面是两个原创 2018-01-08 17:41:41 · 5518 阅读 · 2 评论 -
仿QQ微信向左滑动点击删除条目的经典案例
本篇文章主要介绍如何侧滑删除条目的案例: 首先我们需要做一个自定义的recyclerView 1,用到的东西有,onTouch事件,触屏事件跟踪VelocityTracker,滑动view.scrollTo和scrollBy,Scroller的使用。 整个过程主要是对MotionEvent的三种状态: 1,down 判定当前条目状态,如果完全打开则立即关闭返回,如果关闭状态,则根据get原创 2018-01-05 21:12:01 · 2592 阅读 · 0 评论 -
gemotion安装apk出现的INSTALL_FAILED_NO_MATCHING_ABIS错误解决方法
在Android模拟器上安装apk的时候出现INSTALL_FAILED_NO_MATCHING_ABIS 解决办法转载 2017-03-02 18:28:32 · 481 阅读 · 0 评论 -
Genymotion 解决虚拟镜像下载速度特别慢的问题
Genymotion号称Android模拟器中运行最快的,但是服务器在国外,Android镜像下载起来那个速度就不想说了。Add new device后下载速度太慢了,容易失败解决方法如下:方法一:1、设置HTTP代理,在Setting->Network,自己设置HTTP proxy和Port, 方法二:1、找到下载链接,直接用迅雷拖下来 遇到下载失败或者下载太慢,win+R打开运行框,输转载 2017-02-27 01:19:46 · 309 阅读 · 0 评论 -
read: unexpected EOF
上传文件时第一次ok,第二次就会报这个错误,此前上传文件一直没问题,从没报这种错误,后来是对比发现,原来是在执行打开文件代码的时候做了这一步: Intent intent = new Intent(CommonDefine.context, ToastService.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);—这一句是新添加的,原创 2017-09-21 10:55:09 · 21469 阅读 · 0 评论 -
自定义View的onDraw(Canvas canvas)方法不被调用
背景:自己做的是一个自定义的textview用于绘制文字 自己重写onDraw(Canvas canvas)方法,在这个方法里,用canvas.drawText(string,x,y,paint)方法绘制文字,打印log发现根本没进入onDraw方法。但是走了onMeasure()方法。根据网络上的一些方法例如:setWillNotDraw(false)等也没用,最终解决方案:将继承的TextVi原创 2018-01-03 14:46:22 · 814 阅读 · 0 评论 -
如何获取资源文件res/raw或assets目录的Uri
安卓存放资源有两种路径: 1,res目录下创建raw目录 2,在main目录下创建assets目录。 相同点: 1,两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制。 两者区别: 1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename;assets文件夹下的文件不会被映射到R.java中,访问的时候需要Ass原创 2017-12-28 16:31:11 · 5272 阅读 · 0 评论 -
Android数据库ORMLite框架的注解详解
背景:数据库在工作中是必不可少的一个工具,所以有必要熟练操作数据库。由于工作一段时间后对数据库的操作还不是很熟练,所以现在好好的整理下数据库的一些常用技巧。 1,目前我主要用的数据库是goggle自带的SqliteOpenHelper这个帮助类,但是用起来相对麻烦,后面接触到ormlite框架,发现非常好用。于是后面改用这个框架。 Android内自带数据库帮助类SqliteOpenHelper原创 2017-12-29 02:11:40 · 675 阅读 · 0 评论 -
The surface has been released错误原因(亲测有效)
从网上看了很多资料,发现好多都是错误的,所以今天特意更新这个问题的原因, 在播放mediaPlayer.start()时SurfaceHolder没有来的及调用onCreate()方法创建view,导致holder没有成功加载,因为mediaplayer是在SurfaceHolder上面播放的,所以才抛出播放异常。贴出正确代码 mSurfaceView = (SurfaceView) findVi原创 2017-12-29 13:13:41 · 15031 阅读 · 3 评论 -
DuplicateFileException打包文件资源重复异常
com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE File1: F:\project\03_mytest\MakePictures\oa原创 2018-01-08 16:55:43 · 867 阅读 · 0 评论 -
鸿洋大神的intentService
转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/47143563; 本文出自:【张鸿洋的博客】项目地址:https://github.com/hongyangAndroid/Android_Blog_Demos/tree/master/blogcodes/src/main/java/com/zhy/blogcodes/inte转载 2017-03-02 18:46:02 · 335 阅读 · 0 评论