07 2018 档案
摘要:version 1.2 1.修改不用输入扩展名 2.输出路径可选。默认会在输入路径下建文件夹 前沿: 现在开发中ios,android会使用一套图,但是ui设计师给的图命名是以@1x,@2x,@3x这样命名的,android 客户端使用起来就略嫌麻烦了,这个小工具可以实现简单的分包。 原理: I/o
阅读全文
摘要:上图是显示效果,下面是代码实现: 个人理解就是使用layer-list实现两层view的叠加,其中top,left,bottom,left控制阴影
阅读全文
摘要:前言:我们都知道,Android中默认的字体是黑体,而大多数app也都是使用的这种字体,但我们发现,大多数app中,个别地方字体非常好看,例如app的标题栏,菜单栏等地方,那他们是怎么做到的呢?有两种方式,第一是图片来代替文字,第二,就是今天我要教大家的自定义字体。 开发环境: Android St
阅读全文
摘要:AndroidStudio升级到3.1后编译报错:The SourceSet ‘instrumentTest’ is not recognized by the Android Gradle Plugin. 项目中 gradle 配置 原因 是这里出问题了 instrumentTest.setRoo
阅读全文
摘要:Android 5.0以上的getRunningTasks失效,该方法可以获得在前台运行的系统进程。可以用getRunningAppProcesses方法暂时替代。 android6.0以上的getRunningAppProcesses也失效,系统关闭了三方软件对系统进程的访问,出于安全考虑。 参考
阅读全文
摘要:最近开发比较烦,这个作为我第一篇博客吧。 效果就是图上的样子。 首先是布局文件,没什么就是一个RecycleView <android.support.v7.widget.RecyclerView android:id="@+id/dis_rv" android:layout_width="matc
阅读全文
摘要:这个接上一个写的实现拍小视频和传到服务器的 界面是这个样子滴. 我也知不知道怎么给图片搞小一点o(╯□╰)o 布局文件是这样的【认真脸】 中间发现一个特务就是混进来的自定义录制视频的的MovieRecorderView这个家伙 这个是抄的,感谢那个伟大的程序员,我踩在了巨人的肩膀上。 button的
阅读全文
摘要:这个情况仅适合与多个fragment之间切换时统计,而非activity和fragment同时交互,因当时项目为首页4个fargment时长统计,因此适合,经下面网友评论指出,特在这里写出此问题,因最近项目较忙,具体情况以后验证后会发出博文更新。 现在越来越多的应用会使用viewpager+frag
阅读全文
摘要:在我们开发的过程中,经常会遇到需要我们判断app进入后台,或者切换到前台的情况。比如我们想判断app切换到前台时,显示一个解锁界面,要求用户输入解锁密码才能继续进行操作;我们想判断app切换到后台,记录一下log;或者当用户切换回前台时,我们想刷新一下页面的数据等等...... android里面监
阅读全文
摘要:不知道你们试过了吗,AlertDialog在我们给他设置我们自己的布局的时候他的宽度不论我们怎么设置他都是不变的,要想改变宽和高我们可以动态的去修改他的宽度好高度 直接上代码 上面代码通过AlertDialog.Builder的setView()方法设置我们自己的布局 通过builder.creat
阅读全文
摘要:查了半天资料,没查到怎样修改progressBar的方法,全都是重新写个ProgressBar,其实很简单在只要一句xml里一句化就可以
阅读全文
摘要:在进行SurfaceView的开发时,出现了java.lang.OutOfMemoryError错误; 由于项目是同时显示四路远端传输过来的视频 所以采用的方法是使用:android:hardwareAccelerated="false"android:largeHeap="true" 即关闭硬加速
阅读全文
摘要:最近项目中使用了GreenDAO的3.0以上的版本,出现需要增加删除表的需求,刚开始用,发现官方对增加和删除的方法是每次去修改数据库版本号,版本一旦升级,那么原来数据库中的表会全部删除再重建。太麻烦,如果不修改版本号,单单只是在model中添加@Entity那么会出现说找不到这张单,无法使用,所以在
阅读全文
摘要:AndroidManifest.xml中增加的receiver
阅读全文
摘要:在Android项目中,有经验的开发人员都知道,一些耗时的IO操作等都必须在子线程中去操作,那么可以有哪些方法来开启子线程呢,一般可以使用Java中自带的几种方法,也可以使用Andorid特有的一些类。 用Java来实现异步 主要有两种方法来实现异步,继承Thread类和实现Runnable接口 1
阅读全文
摘要:最近在做项目的时候,为了方便测试人员测试,在应用中加入正式库和测试库切换的功能。为了防止正式库和测试库切换带来的数据冲突,切换的时候必须把当前的数据库清空。代码如下: 必须要加上DaoMaster.createAllTables(daoMaster.getDatabase(),true),不然重新进
阅读全文
摘要:1. 概述 Android 6.0 (API 23) 之前应用的权限在安装时全部授予,运行时应用不再需要询问用户。在 Android 6.0 或更高版本对权限进行了分类,对某些涉及到用户隐私的权限可在运行时根据用户的需要动态授予。这样就不需要在安装时被强迫同意某些权限。 2. 正常权限 和 危险权限
阅读全文
摘要:TYPE_TOAST一直都可以显示, 但是用TYPE_TOAST显示出来的在2.3上无法接收点击事件, 因此还是无法随意使用. 下面是我之前研究后台线程显示对话框的时候记得笔记, 大家可以看看我们项目中有需求需要在后台任务中显示Dialog, 项目最初的做法是用Activity模拟Dialog, 一个Activity已经承载了近20种Dialog, 代码混乱至极. 后来我发现Dialog可以通过...
阅读全文
摘要:极光推送提供三种方法实现Notification通知 但是前三种方案无法实现自定义声音,只有第四种方案可实现自定义Notification并进行通知 尝试方案一: AndroidManifest.xml MyReceiver.java 尝试方案二: 尝试方案三: 尝试方案四: 接受广播 Action
阅读全文
摘要:正常情况下的处理: dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT)以及在清单文件中添加 <uses-permission android:name="android.permission.SYSTEM_
阅读全文
摘要:rxjava+retrofit处理网络请求 在使用rxjava+retrofit处理网络请求的时候,一般会采用对观察者进行封装,实现代码复用和拓展。可以参考我的这篇文章:rxjava2+retrofit封装处理网络请求全解析。一种可行的封装如下: 基类observer 封装请求(登录为例) 这里us
阅读全文
摘要:问题 在处理6.0运行时权限时,很多人都忽略了这样一个问题: 在一个App应用里,如果已经允许了一个权限比如(读取通讯权限),此刻去调用相机,弹出权限申请对话框,此刻点击拒绝,然后经过处理后弹出去设置权限界面(因为权限总归是要申请),如果再在置界面里打开应用权限设置,此刻不但不打开相机权限反而将已经
阅读全文
摘要:项目开发中有时需要用到一些写死的数据,如公司的产品信息之类的。这就需要我们先把数据库文件保存在资源文件夹下,然后当应用创建时将数据库文件拷到应用安装目录的/databases/文件夹下,然后再对数据进行操作。 本篇文章参考了【Android】GreenDao操作外部DB数据库文件—-寒小枫 使用gr
阅读全文
摘要:例如现在的栈情况为:A B C D 。D此时通过intent跳转到B,如果这个intent添加FLAG_ACTIVITY_CLEAR_TOP标记,则栈情况变为:A B。如果没有添加这个标记,则栈情况将会变成:A B C D B。也就是说,如果添加了FLAG_ACTIVITY_CLEAR_TOP标记,
阅读全文
摘要:Intent几种常见的flags: Intent几种常见的flags: 1.FLAG_ACTIVITY_NEW_TASK:当Intent对象包含这个标记时,系统会寻找或创建一个新的task来放置目标Activity,寻找时依据目标Activity的 taskAffinity属性进行匹配,如果找到一个
阅读全文
摘要:Greendao3.0release与7月6日发布,其中最主要的三大改变就是:1.换包名 2.实体注解 3.加密支持的优化 本文里面会遇到一些代码示例,就摘了官方文档和demo里的例子了,因为他们的例子已经写的很好了。 一、GreenDao3的配置 3.0相比2.0的配置较为方便,不用新建Modul
阅读全文
摘要:首先来看看效果吧: 效果预览.png 效果预览.png 本实例来自于慕课网的视屏http://www.imooc.com/video/13046,实现步骤可以自己去观看视屏,这里只记录了下实现的代码。 添加依赖: (1) 在项目的build.gradle文件中添加下面的依赖 (2) 也可以在下图中自
阅读全文
摘要:最近项目上比较忙,终于有空闲时间写写东西了。 相信做过Android的都知道,现在的手机系统五花八门,当我们去请求用户的权限的时候,总是会弹出是否允许的对话框。 而且用户一旦不小心点了拒绝,下次就不再询问了,而很多小白用户也不知道怎么去设置。这就导致了很不好的用户体验。 经过研究,我发现像小米,魅族
阅读全文
摘要:这个我们需要自己去编译,但是已经有人帮我们编译好了,压缩算法也已经实现,因此,我们去下载然后编译即可:https://github.com/bither/bither-android-lib 首先将上面下载好的已经编译好的libjpeg放到jni目录下,将下图内容都放到jni目录中: 安装好ndk以
阅读全文
摘要:用过ios手机的同学应该很明显感觉到,ios拍照1M的图片要比安卓拍照排出来的5M的图片还要清晰。这是为什么呢? 这得了解android底层是如何对图片进行处理的. 当时谷歌开发Android的时候,考虑了大部分手机的配置并没有那么高,所以对图片处理是使用的Skia这个开源库。当然这个库的底层还是是
阅读全文
摘要:在android开发(尤其是android游戏开发)中有一个很严重的问题就是带有渐变效果的png图片会出现严重的banding(色带),鉴于这种情况,有几种可行的解决方法: 1.如果Activity里面的onCreate()方法里面的setContentView()的参数是xml布局文件(类似R.l
阅读全文
摘要:微信的缩略图要求是不大于32k,这就需要对我的图片进行压缩。试了几种方法,一一道来。 代码如下 ByteArrayOutputStream baos = new ByteArrayOutputStream(); image.compress(Bitmap.CompressFormat.JPEG, 1
阅读全文
摘要:我的解决办法: 1 首先设置android:layout_width=”wrap_content”和android:layout_height=”wrap_content”,否则你按比例缩放后的图片放在这也有可能会虚的。 2.配合android:scaleType="fitXY" 使用 3.为图片设
阅读全文
摘要:GreenDao 给我个人感觉 比一般的ORM框架要好很多,虽然说上手和其他的比起来,较复杂,但是如果使用熟练以后,你会爱上这个框架的 用这些ORM 框架给我的感觉都是,当升级时,都需要进行数据库所有表的删除,然后再重新创建表,这样的话,开发时候可以,但是真正的项目用,这是不允许的,因为如果用户升级
阅读全文
摘要:RxJava2和Retrofit2用的越来越多,最近也在封装一个通用的网络请求库,其中就包括了单文件下载的方法,所以这里进行记录。文末附带Demo 由于网上很多的方法都是使用拦截器进行进度的监听,个人觉得使用起来非常复杂和,所以取了个巧,在文件写入到硬盘的时候对文件读写进行监听,就解决了retrof
阅读全文