发现好内容
检索全部订阅源文章 · 更新于 2026-10-28 18:06
Android WebView使用的技巧与一些坑
随着手机性能的提高,以及iOS和Android两个平台的普及,更多的App都会选择两个平台的App都进行开发,在有些时候,为了更加快速的开发,我们会采用hybird方式开发,这个时候我们需要使用webview并且自己进行一些配置。Android的webview在低版本和高版本采用了不同的webkit版本内核,4.4后直接使用了chrome,因此问题很多,这里分享一些我使用过程的一些技巧和遇到的坑。 webview配置 1 2 3 4 mWebview.getSettings().setJavaScriptEnabled(true); //设置允许运行javascript // HTML5 AP
改变support中AlertDialog的样式
android最近的support库提供了AlertDialog,可以让我们在低于5.0的系统使用到跟5.0系统一样的Material Design风格的对话框,但是使用了一段时间想到一些办法去改变对话框按钮字体的颜色,都不生效。 最近在网上找到了改变的方法,首先来说一下。 改变AlertDialog的样式 在xml中定义一个主题: 1 2 3 4 5 6 7 8 #FFC107 #FFFFFF #4CAF50 样式如下图所示: 在创建的对话框的时候,这样创建就可以了。 1 2 3 4 5 6 AlertDialog.Builder builder = new AlertDialog.Buil
一个上传apk到fir的gradle插件
声明,这不是广告,没有任何利益瓜葛。 App内测需要把安装把安装包放在一个地方进行托管,方便内测人员下载。国内有蒲公英,fir,等等这些网站可以用。 最近fir上了新版本了,上了新的api,新界面,本以为它们会提供gradle的上传工具,结果没有,而且它们新版本还不好用,原本的下载统计浏览统计都没有了,结果上传很慢,甚至上传不了,我便写了一个gradle的上传工具。 先介绍使用方法吧 使用方法 插件目前只有唯一一个task uploadFir –上传apk到fir 集成插件本插件,你要按照如下方法使用 编辑build.gradle 1 2 3 4 5 6 7 8 9 10 11 12 13 1
Android应用使用自定义字体的一些探究
最近团队里面在做程序界面统一的工作,因此希望统一字体,接到一个研究怎么自定义字体的任务。因为我们的开发模式,所以需要研究在界面内的字体自定义,以及webview的显示中的字体自定义。 android系统内置字体 android 系统本身内置了一些字体,可以在程序中使用,并且支持在xml配置textView的时候进行修改字体的样式。支持字段为android:textStyle ,android:typeface, android:fontFamily,系统内置了normal|bold|italic三种style, 内置了normal,sans,serif,monospace,几种字体(实测这几种
图片贴纸旋转缩放功能的实现
我们的项目包含图片编辑功能,特别是包含图片添加水印贴纸的功能,从最初的简单版可以添加一个图片并且移动位置,到现在添加的图片可以进行移动,以及缩放,旋转,已经是和其他的图片处理可以达到一样的很好的效果了。一直想要整理一下,分享一下实现的改进过程,一直没空,也由于我过于懒,没有动笔。今天正好有时间,分享一下。 原始阶段:直接添加ImageView,并且设置其在父view中的位置 父视图为RelativeLayout,贴纸view就是一个ImageView,通过设置topMargin和leftMargin来设置在父视图中显示的位置,不支持缩放和旋转。功能快速实现,代码比较冗余。再有了新的需求不方便扩
打破Android应用65K方法数魔咒
近日,我们的应用,在编译的时候不幸的遇到这个错误 Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536 这才让我意识到原来我们的程序中,方法数已经超过了65536。在之前,已经知道了android系统的java虚拟机dalvik在执行java程序时,使用原生类型short来索引dex文件中的方法,因此方法数就呗限制在65536了。之前我一直以为,这个数量已经很大了,不会达到上限,结果今天就达到了。 不过这个东西呢,我们也是很容易的进行解决的,因为,就在去年不久
加速Android Studio/Gradle构建
已经使用Android Studio进行开发超过一年,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。 开启gradle单独的守护进程 在下面的目录下面创建gradle.properties文件: /home//.gradle/ (Linux) /Users//.gradle/ (Mac) C:\Users\\.gradle (Windows) 并在文件中增加: 1 org.gradle.daemon=true 同时修改项目下的gradle.properties文件也
java注解
从java 5.0开始,为我们提供注解功能,通过注解可以限制代码的重载,过时,以及实现一些其他功能,这里,就来分析一下java的注解。 java 元注解 首先来看java元注解,分别是: @Target @Retention @Documented @Inherited 这些注解和他们所修饰的类在java.lang.annotation包中,代码都很简单,可以去查看一下。 @Target 描述注解的使用范围,取值: ElementType.CONSTRUCTOR:描述构造器 ElementType.FIELD:描述成员变量 ElementType.VARIABLE: 描述局部变量 Elemen
android动画-View Animation
视图动画(View Animation),又称补间动画(Tween Animation),即给出两个关键帧,通过一些算法将给定属性值在给定的时间内在两个关键帧间渐变。本文首先讲解各种基本动画的使用,其实介绍View动画的工作过程。 概述 视图动画只能作用于View对象,是对View的变换,默认支持的类型有: 透明度变化(AlphaAnimation) 缩放(ScaleAnimation) 位移(TranslateAnimation) 旋转(RotateAnimation) 可以使用AnimationSet让多个动画集合在一起运行,使用插值器(Interpolator)设置动画的速度。 上面说到
android动画-Frame Animation
动画可以在视觉上增加程序的流畅度,我之前对于动画这一块,是会用,但是不全面,这里写下博客,全面梳理一下Android动画方面的知识。当然,关于动画这块,也有很多前人写了很多内容,大家可以去参考。 3.0以前,android支持两种动画模式,Tween Animation,Frame Animation,在android3.0中又引入了一个新的动画系统:Property Animation,这三种动画模式在SDK中被称为Property Animation,View Animation,Drawable Animation。 可通过NineOldAndroids项目在3.0之前的系统中使用Pro
android反编译-如何防止反编译
前言 前面介绍了怎样去反编译别人的代码。哈哈,这里居然又写进行防止反编译。但是,还是先来写写吧。 使用ProGuard proguard android的sdk中就有提供,使用它可以对代码进行混淆和精简,处理后的代码,虽然仍然可以反编译,但是阅读起来相当困难,降低代码的可读性。操作简单,推荐使用。 proguard使用方法和配置,可以看我之前的博客: https://isming.me/2014-05-31-use-proguard/ 另外网上有别人共享的proguard配置模板,也可以参考: https://github.com/krschultz/android-proguard-snip
android反编译-smali语法
前言 前面我们有说过android反编译的工具,如何进行反编译。反编译后可以得到jar或者得到smali文件。Android采用的是java语言进行开发,但是Android系统有自己的虚拟机Dalvik,代码编译最终不是采用的java的class,而是使用的smali。我们反编译得到的代码,jar的话可能很多地方无法正确的解释出来,如果我们反编译的是smali则可以正确的理解程序的意思。因此,我们有必要熟悉smali语法。 类型的表示 java里面包含两种类型,原始类型和引用类型(包括对象),同时映射到smali也是有这两大类型。 原始类型 V void (只能用于返回值类型) Z boole
android反编译-反编译工具和方法
前言 开发过程中有些时候会遇到一些功能,自己不知道该怎么做,然而别的软件里面已经有了,这个时候可以采用反编译的方式,解开其他的程序,来了解一些它的做法,同时啊,还可以借鉴别人的软件结构,资源文件,等等,哈哈。那我就来讲解一些关于反编译相关的知识,主要分三篇,第一篇介绍反编译的工具和方法,第二篇,介绍smali的语法,第三篇介绍如何防止反编译,主要通过这几篇文章,了解如何去做反编译和代码加固。 工具 apktools-目前最强大的反编译工具 轻松反编译apk,解析出资源文件,xml文件,生成smali文件,还可以把修改后的文件你想生成apk。 支持windows,linux,mac。 下载地址:
2014年总结
14年总结 又一年开始,网上也流散着许多的年终总结,往年我也会写写,都是流水的回忆。前两日,与小波电话聊天,突然想到问他一四年用三个词总结是什么?得到的是失恋,毕业,工作。让我说说2014的三个词,竟然一时无从说起。这两日一直思考这个问题,毕竟这一年过的比较平淡。用三个关键词形容2014,就是"踏实", “责任"和"收获"吧。 2014年对于我来说,是很平淡的一年,没有什么大的波折,一些都还比较顺。这一年很踏实,这一年读了很多书(可能是我目前为止读书最多的一年),第一年开始认真用心的写博客,同时从广州转战上海,心里上也很踏实。 这一年奶奶去世了,家里还有几个老人,同时父母身体也不好,几次回家,
一个程序员的Ubuntu安装的那些软件
鄙人程序猿一枚,Android开发,常年使用Ubuntu(主要是买不起Mac,O(∩_∩)O哈哈~)。分享一下自己使用的那些软件,如果你有什么好的软件。欢迎与我交流。 输入法:开始的时候是用的fcitx,后来搜狗出了linux版本,选择之。下载链接 办公软件:WPS Linux,真心很好用,比libreOffice好用不止一点.下载链接 注意:下载alpah版本. 浏览器:chrome 和 FireFox,不解释,一个浏览器不够用的。这两个,开发调试都够了。关于支付宝的话,可以安装支付宝官方给的一个脚本就可以了。 邮件客户端: ThunderBird Mail 火狐家的,算比较好用的了。 笔记