android
文章平均质量分 67
nj物是人非
从事金融方向的app、公众号以及后台开发。
展开
-
Android Studio常用快捷键
公司的ide是as,特整理了下android studio开发中经常用到的快捷键,供参考;CTRL + D : 复制放当前行CTRL + Y : 删除当前行CTRL + N : 查找当前project中的所有类名称CTRL + SHIFT + N : 查找当前project中所有的文件(包括.java、.xml等所有文件)ALT + ENTER : 显示错误提示(也常用原创 2015-11-16 00:15:39 · 702 阅读 · 0 评论 -
Android拍照或相册获取照片上传
现在的项目中越来越多的地方会用到上传图片的技术,比如im聊天,上传头像等。那么android主要的获取图片的两种路径就是拍照和从相册获取。今天就介绍下如何通过这两种途径获取,以及压缩获取到的图片并且写入文件上传到服务器。1.打开相册intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL原创 2016-02-24 21:56:53 · 2360 阅读 · 0 评论 -
Android多线程断点下载
最近想写一个关于在线更新的文章。在线更新基本逻辑就是将当前的app的版本号发送给服务器校验,若服务器上有新版本就会返回一个url给客户端。客户端就要去这个url下载最新的apk包。这个功能的核心以及难点就是下载文件,然而!!然而!!就在今天在极客学院的网站上看到一个视频,讲的是关于多线程断点下载的。这可比我的单线程,不支持暂停的下载要高大上太多了。于是我就学习了一下,将它总结一下:视频地址极客学院原创 2016-02-29 23:04:20 · 864 阅读 · 1 评论 -
【转】Android 开发中,那些让你相见恨晚的方法、类或接口
http://gold.xitu.io/entry/570bf640df0eea0054ee2186晓_晨DEV 研发工程师 @ 魅族Android 开发中,那些让你相见恨晚的方法、类或接口原文 liukun.engineerPS:本文类容来自我在知乎上对Android开发中,有哪些让你觉得相见恨晚的方法、类或接口?这一问题的回答,目前就总结这些,日后若有新转载 2016-04-13 09:47:27 · 488 阅读 · 0 评论 -
【转】配置你的 Android Studio
NeXT___ Android 工程师 @ 稀土当我们在配置 Android Studio 的时候,下面的一些配置或许有一些帮助。原文 liukun.engineer本文主要内容来自Dmytro Danylyk 在Medium 的文章Configuring Android Studio。在此感谢!虽然使用Android Studio 有一定的时间了,但文中的某几个设置之前还转载 2016-04-13 09:54:55 · 776 阅读 · 0 评论 -
获取android正在运行的所有app进程
ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); List infoList = am.getRunningAppProcesses(); for (ActivityManager.RunningAppProcessInfo info : infoLi原创 2016-05-25 11:41:57 · 13737 阅读 · 1 评论 -
Android拍照或相册获取照片上传 (带图片剪裁)
本文之贴上代码,具体操作详解参考之前的博客http://blog.csdn.net/njweiyukun/article/details/50733675/** * Created by WYK on 2015/6/14. */public class MainActivity extends Activity { public static final int OPEN原创 2016-04-19 10:38:27 · 1323 阅读 · 0 评论 -
Android的WebView中js与java代码相互调用
近期一直在做nwjs的东西,所以整理android的时间比较少;今天将webview相关的知识点整理上来。现在越来越多的的项目中会采用webview的形式的展示自己的页面,通过这种形式的最大优点是展示的内容的可控性非常强,服务器可以通过更新服务端html文件来展示最新的内容。有些复杂html页面不单单是展示内容,可能还会有一些按钮,点击按钮后会跳转到android的本地页面,这个时候就需要通过原创 2016-01-20 00:20:58 · 1140 阅读 · 0 评论 -
【转】5分钟搞定android混淆
转载自http://www.jianshu.com/p/f3455ecaa56e前言混淆是上线前挺重要的一个环节。android使用的ProGuard,可以起到压缩,混淆,预检,优化的作用。但是很多童鞋还没有掌握正确的写混淆文件的姿势。我希望搞个模板化的东西,让大家轻松搞定混淆。那么,开始写一个项目的混淆吧。。。我是不是很直接。。。。五步搞定1打开项目中的proguard-转载 2016-05-05 15:51:41 · 1122 阅读 · 0 评论 -
【转】EditText不弹出输入法,焦点问题的总结
转自:http://mp.weixin.qq.com/s?__biz=MzAwOTUyNzI3Ng==&mid=2652071079&idx=1&sn=3ea3afd2909c21acc9e0199fbb3156b6&scene=0#wechat_redirect今天偶然浏览到一个关于EditText弹出输入法和焦点的问题,就总结一下跟大家进行分享。首先呢获取焦点是获取焦点,弹输入法是转载 2016-05-30 09:11:30 · 2166 阅读 · 0 评论 -
自定义PopupWindow,带显示隐藏动画、全屏背景以及触摸屏幕空白区域消失的功能
先来大致介绍写PopupWindow的常规默认状态的几点不好的地方:1.显示隐藏的时候都是瞬间的,没有任何过度动画。2.无法通过点击屏幕的空白区域使其关闭。3.无法在弹窗显示的时候,在其背后加上黑色遮罩。用过AlertDialog的同学会发现,其实上面三个特性AlertDialog都是自带的效果或通过自带api可以轻松实现,那么我们为什么非要使用PopupWindow呢?那是因为A原创 2016-10-11 13:10:56 · 2365 阅读 · 0 评论 -
【转】EditText中imeOptions的使用
转自:http://blog.csdn.net/lastdream/article/details/24365633虽然通常输入法软键盘右下角会是回车按键但我们经常会看到点击不同的编辑框,输入法软键盘右下角会有不同的图标点击浏览器网址栏的时候,输入法软键盘右下角会变成“GO”或“前往”而我们点击Google搜索框,输入法软键盘右下角会变成 放大镜 或者“搜索”而决定转载 2016-11-09 09:02:55 · 549 阅读 · 0 评论 -
【greenDAO3】 项目搭建与增删改查操作
最近需要开始一个新的项目了,考虑到既然是新项目了,那么一些常用的框架肯定也要用当下最火的!这次的新项目中涉及到了本地数据存储,很早前有个项目的本地数据库框架用的是ActiveAndroid,github找了下这个框架,发现已经两年多已经没有更新了。然后就想到了一直没有时间去涉及到的greenDAO,github一搜索,哦呦?star有5000+,并且依然保持着很高的更新频率,并且性能远远的高于ac原创 2016-07-13 00:07:59 · 45120 阅读 · 43 评论 -
retrofit配合使用protobuf3
之前项目中使用了retrofit网络请求框架和protobuf2的数据结构。因为protobuf3出来也有一段时间了,所以准备在新项目中换成protobuf3,但是在如果还是使用以前的那些库会导致编译出来的proto文件全部报错以及retrofit的converter-protobuf无法解析服务端返回的数据,下面给出proto2时候的需要的包,以及proto3时候需要的包。proto原创 2017-04-19 09:09:27 · 3702 阅读 · 2 评论 -
Java中List遍历删除以及Map的输出方法
1.关于List的遍历删除 当我们想删除list中的某一条数据时候,通常会遍历list,找到那一个元素,然后移除。【错误】的做法实例1List list = new ArrayList();list.add("aa1");list.add("aa2");list.add("aa2");list.add("aa4");for (int i = 0; i < list.siz原创 2016-03-10 00:39:17 · 1230 阅读 · 0 评论 -
Android提取短信中的验证码
现在用短信验证码来实现登录和注册功能已经越来越常见了。如果你想用户在收到短信验证码后,不需要再手动输入进去的话,而是自动填入,那么你就需要做些特殊处理了!1.监听短信变化 首先需要的是通过ContentObserver类中的OnChange()监听你的短信变化。简单的介绍下ContentObserver:内容观察者,目的是观察(捕捉)特定Uri引起的数据库的变化,继而做一些相应的原创 2016-02-15 23:46:03 · 3809 阅读 · 1 评论 -
Android打空的签名包
上传市场的时候,市场经常需要你将他们的一个未签名的空包打成一个签名的包。当然了,这的签名包用的签名必须是当前上传的app所用的签名。打包的命令:jarsigner -verbose -keystore D:\dir\xxx.keystore -signedjar D:\dir\signed.apk D:\dir\unsigned.apk testD:\dir\xxx.keystore:原创 2016-01-07 23:22:45 · 1361 阅读 · 1 评论 -
WebView调用loadUrl时候带上cookie信息
今天分享一个小方法~项目中有一个界面是一个纯webview,为了让这个界面在发布后也可以随时修改样式,当时就没有选择传统的android xml的布局界面,而是选择跳转到一个html界面。但是这个html也不是一个静态页面,他的界面会根据用户不同的等级做出相应的改变。那么这时候,就需要传参数,将用户的信息塞到这个http的请求中。/* 让webviewloadurl的时候带上cookie信原创 2015-11-19 23:03:51 · 4093 阅读 · 0 评论 -
PopupWindow中EditText无法长按出现selection markers
首先解释下selection markers,就是我们在edittext长按的时候,会出现选中的光标以及复制、粘贴等选项(如下图);实在找不到描述他们的词语了,就用了so上的名称了;就在昨天,跑了跑项目,想再看看还有什么可以优化的地方,于是发现了有些地方的TextView没有做长按复制,然后就优化了下。优化完成后想试试能不能粘贴,于是找了个项目里的EditText长按复制,但是!!太奇原创 2015-11-21 14:13:08 · 3930 阅读 · 0 评论 -
记录ListView当前的精确位置
如上图所示,两个”标签页“,直播室和聊天室。如果你的这个界面不是通过ViewPager来实现的,而是通过一个ListView,点击直播室或者聊天室切换的只是数据源,而非View。这时候在你切换之前可能需要记录一下当前ListView的位置,为了方便切换回来的时候回到之前的位置(默认是回到顶部)。记录位置具体方法如下:int prevSelection = listView.getFirst原创 2015-11-23 23:42:40 · 1846 阅读 · 0 评论 -
Android5.0以上版本ActiveAndroid报ClassNotFoundException错误
近日将正在开发的app运行到android lollipop系统上却出现的闪退,经过查找发现是ActiveAndroid在5.0上的兼容性问题。通常我们初始化ActiveAndroid的时候,是通过在自定义的Application中的onCreate()方法中调用ActiveAndroid.initialize(this);或者是自定义的Application直接继承com.activ原创 2015-11-17 23:55:22 · 2754 阅读 · 1 评论 -
获取手机中所有应用的包名与权限以及当前应用的版本号
【第一个问题获取手机中所有应用的包名与权限】有时候你的App需要跳转到其他的App,你需要知道他的包名,最简单的方法就是通过Android自带的方法去获取了。一般的包名都是能够一眼看出来的,要么是应用名的拼音,要么就是英文了。代码如下:PackageManager pm = getPackageManager();List installedPackages = pm.getInst原创 2015-11-24 00:00:33 · 2476 阅读 · 0 评论 -
Activity转场动画(透明Activity)
公司的应用开发已经进入了优化阶段,这时就想给每一个打开的activity增加一个手势返回,当手指向右滑动时候,activity会跟着手指滑动,直至销毁(仿微信)。想做成滑动返回的效果,当前的activity除了监听手势之外,自身的背景一定要是透明的!并且为了配合右滑返回的效果,activity进场的动画也不能采用默认的动画,应该让activity从屏幕的右侧飘进来~~activity销毁的时候原创 2015-11-18 23:06:53 · 3625 阅读 · 5 评论 -
Android6.0中设置权限时候的SecurityException异常的处理
说来也巧了,今天碰到了一个特别奇怪的问题。上午写了一个小demo其中有一个功能是获取通讯的,大家肯定知道这时候肯定要添加一个权限: 添加完后就开始运行了,竟然报错了,Caused by: java.lang.SecurityException: Permission Denial: opening provider com.android.providers原创 2015-11-25 23:18:55 · 25085 阅读 · 3 评论 -
跑马灯式的TextView
这个实例非常的常用,也不是很复杂,关键点就是确保TextView要获取到焦点。列出TextView的几个关键属性marqueetruetruemarquee_forevertruetrue一般的情况下,设置的上述的属性后,在长度足够的情况下,TextView内的文字会滚动起来了。但是如果你发现他没有滚动,那么肯定是没有获取到焦点。在一些很复杂的界面中,存在很多强焦点的情况,这原创 2015-11-19 23:52:44 · 690 阅读 · 0 评论 -
第一篇博客
以后会在博客记录下学习的经历,将常用的代码记录于此!Syetem.out.print("Hello World");exit(0);原创 2015-10-26 08:50:00 · 437 阅读 · 0 评论 -
Android中DatePicker只显示年月的方法
最近项目中有一个选择信用卡有效期的功能,只需要选择年月,但是Android原生的DatePicker默认是可以选择年月日的,所以我们要做下特殊的处理,并且Android5.0以上和以下的版本的处理方式是不同的关于5.0以上和以下版本为什么这么处理的原因,详见so:http://stackoverflow.com/questions/26460682/custom-date-picker-d原创 2015-12-17 10:22:42 · 16703 阅读 · 6 评论 -
[转]APK瘦身实践
转载自:http://www.jayfeng.com/2015/12/29/APK%E7%98%A6%E8%BA%AB%E5%AE%9E%E8%B7%B5/因为推广的需要,公司需要把APK的大小再“减小”一下,4M以内!当达到4M以内之后,公司建议说,能否再压压?2M如何?瘦身前因为平时就考虑到大小的限制,所以很多工作已经做过了,如下列举现在的状态:7.3M转载 2016-01-27 11:37:05 · 463 阅读 · 0 评论 -
[转]Android批量打包提速 - 1分钟900个市场不是梦
黎明前的黑暗使用Ant或者Gradle来给程序进行多渠道批量打包,通常都是在manifest文件中写入一个meta标签:meta-data android:name="CHANNEL" android:value="xxx" />meta的key值固定,通过循环改变meta中的value值来实现市场渠道的写入。Ant批量打包实现相对麻烦,以前写的时候多亏了谦虚的天下-《Ap转载 2016-01-11 21:57:48 · 570 阅读 · 0 评论