android
文章平均质量分 71
暴走邻家
一名还在探索的Android初级工程师
展开
-
解决android扫描二维码时,用户禁止权限报错问题
当我用ZBarDecoder.jar写了一个扫描二维码的程序,确实实现了扫描功能。组长说如果用户禁止调用摄像头,那程序也不能崩溃。结果我一运行就崩溃了。在网上自己找了找,可以这样解决。 try { mCameraManager.openDriver(); } catch (Exception e) { //当用户手动禁止摄像头权限时,防止系统崩溃原创 2017-01-16 08:14:48 · 3515 阅读 · 0 评论 -
图片的压缩处理
在处理图片显示时,如果图片显示较少,一般没有什么问题。但如果一次加载很多图片,很有可能报oom错误。比如照片墙,viewpager同时显示几十张图片,所有有必要了解图片的压缩处理。1.新建一个函数,封装图片的压缩处理。private Bitmap decodeBitmapFromFile(String absolutePath, int reqWidth, int reqHeight) {原创 2017-02-07 08:25:20 · 348 阅读 · 0 评论 -
ViewPager的事件冲突的解决
当我昨天做viewpager内图片的滑动时,发现图片没有滑动,反而是viewpager滑动了,后来在网上查了资料,解决的事件冲突的问题。 @Override public boolean dispatchTouchEvent(MotionEvent ev) { //处理与Viewpager的事件冲突 if (mCurArrayMode==1){原创 2017-01-17 08:20:29 · 858 阅读 · 0 评论 -
android简单服务器的搭建
昨天,组长让我试着搭一个服务器,用于做客户端app的登录与注册功能。以前一直以为做android只需要写好app就可以,这次发行可以尝试服务器的编写,也让我学会了做android开发不仅要写好客户端,服务器最好也要会一点。由于此次博客会比较难懂,有问题的人可以给我留言,我看到后会恢复,记得点赞。1.首先,在网上下载eclipse,这是我的下载eclipse的地址:http://downlo原创 2017-02-08 08:31:58 · 5416 阅读 · 0 评论 -
listview异步加载图片
一般,我们使用listview加载图片时,有很多的jar包已经封装的很好,我们只需要知道怎么使用就可以,比如常用的imageLoader,使用非常的方便。但是,我们也要知道自己怎么用listview异步加载图片。昨天,在网上找了资料,自己总算是做出来了。1.新建一个普通的listview,每个item里存放一个imageview和textView,然后做好一个适配器adapter。adap原创 2017-02-17 08:35:09 · 1011 阅读 · 0 评论 -
EditView设置边框
昨天,我试着做一个登陆界面时,用户名和密码的输入框是一条横线在下边,我觉得不好看,想设置成边框样式。在网上搜了一下,解决了这个问题。 第一种比较简单,但是样式不好看。只需在EditText属性中增加“ android:background="@android:drawable/edit_text"”一条即可。 第二种是在EditText的background设原创 2017-02-09 08:29:11 · 4903 阅读 · 0 评论 -
图片的变暗与变亮
昨天,我做一个照片墙,需要当用户没有选择图片删除时,删除图标变暗且不可点击,选中了图片后删除图标变亮。查了一些资料,终于做出来了。1.新建一个Drawable的 全局变量private Drawable drawable; 2.获取需要变暗的图标drawable = getResources().getDrawable(R.drawable.alarm_empty);原创 2017-01-18 08:19:16 · 3077 阅读 · 0 评论 -
GridView的全选与反选
昨天做照片墙的全选和反选功能时,一直有bug出现,后来花了一些时间,终于是做出来了。 1.在已经完成照片墙的adapter内,加入选择图片的ListmSelectedImg 变量,private ListString> mSelectedImg = new ArrayList; 2,然后在public View getView(final int position, View原创 2017-01-19 08:27:21 · 691 阅读 · 0 评论 -
Tomact和MySql搭建android简单服务器
之前已经写了怎么搭建eclipse加tomcat整合成服务器环境,如果有人不知道怎么配置,可以看我的那篇博客。 现在环境搭配好的情况下,在eclipse里新建一个Web工程,在src包下新建一个servlet。@WebServlet("/UserServlet")public class UserServlet extends HttpServlet { privat原创 2017-02-10 08:23:40 · 1521 阅读 · 0 评论 -
android 屏幕切换监听
昨天,我试着在屏幕切换时,使View显示在不同的位置,在网上搜索了一些资料,自己做了一段时间,终于完成了功能。 由于屏幕切换会调用activity的各个生命周期,所以需要在manifest的activity属性加上代码android:configChanges="keyboardHidden|orientation|screenSize|locale|layoutDirection"原创 2017-01-20 08:32:07 · 2344 阅读 · 0 评论 -
android RSA加密
这个RSA加密其实自己也没有完全弄清楚,只是在网上自己找了一些资料,也是为了记录自己的代码。概述RSA是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困 难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥。公钥是可发布的供任何人使用,私钥则为自己所有,供解密之用。关于RSA其它需原创 2017-03-01 08:29:47 · 445 阅读 · 0 评论 -
android 密码加密
之前,自己尝试搭建一个服务器,服务器搭好后,自己希望在app上加一个登陆和注册的功能。其实就是app通过POST请求把用户输入的用户名和密码发送给服务器,然后,服务器对数据库进行读取,和用户的数据进行比较,然后返回结果。其实,登陆功能基本了,可是给组长看的时候,它说密码的传递应该是要加密的,不然别人一抓包,不就知道用户的密码了。所有到网上查了一些资料,最后找到了一些加密的代码。1.原创 2017-02-21 08:19:32 · 2062 阅读 · 0 评论 -
app升级注意事项
当公司要求我把app发布时,要求我修改app的版本号,当时我只修改了manifest.xml的android:versionCode和android:versionName,结果领导说我没改过来。后来发现android studio的正确修改步骤。 1.把manifest.xml文件中的android:versionCode加1android:versionName增加一个单位(如原创 2017-01-13 08:40:39 · 431 阅读 · 0 评论 -
java动态添加view
一般情况下,我们大部分人都是在XML文件直接写布局,可是有些时候需要用代码动态添加布局,比如我昨天做一个viewpager的页数的显示,当没有内容是把textView给clear掉,有内容是用java代码动态添加。 1.编写代码,生成view,添加到linearLayout内。mTextView=new TextView(mActivity);LinearLayout.Layout原创 2017-01-23 08:31:03 · 1342 阅读 · 0 评论 -
android 验证码
在登录或者注册时,客户端总有一个验证码需要用户填写,自己在网上搜索了一些资料,便自己做了出来。1,写一个验证码生成的类public class Code { //随机数数组 private static final char[] CHARS = { '2', '3', '4', '5', '6', '7', '8', '9',原创 2017-03-02 08:30:35 · 393 阅读 · 0 评论 -
android工作注意事项
昨天,公司要我发布一个app的新版本,我给去提交测试,结果发现自己完成公司的要求外,自己加了一点功能,加的功能在测试时出现了问题,后来自己也做了修改,可是急着发布,也就存在着bug发布了。这次问题不大,但是组长告诉我应该完成要求的功能后,自己如果想改动,可以在SVN建一个分支去做,避免应为自己的改动出现问题,影响了app的发布。所有,当公司告诉我们要求的功能时,自己做完就可以提交测试。自己原创 2017-01-24 08:35:01 · 595 阅读 · 0 评论 -
android 键盘的隐藏与显示
这个其实很简单,但是有时候自己就忘记了,所以在这里记录一下。1,键盘的隐藏。private void hintKbTwo() { InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); if(imm.isActive原创 2017-02-22 08:17:30 · 430 阅读 · 0 评论 -
Ubuntu安装eclipse
记得昨天在linux上安装eclipse,从开始的jdk环境到最后成功安装eclipse,花了好多时间。不过最后还是安装成功了。1.下载一个VMware虚拟机,然后在虚拟机上安装Ubuntu系统。这个比较简单,网上的安装教程非常多。 2.下载liunx版本的jdk,安然从window移动到linux,这之前需要在linux上运行vmware-tools,具体的可以参考这篇博客http:原创 2017-02-14 08:31:27 · 573 阅读 · 1 评论 -
android 对话框
其实这个很简单,只是自己用的比较少,但是还是写一下为好。 1.编写一个创建对话框的代码protected void dialog() { AlertDialog.Builder builder = new Builder(Main.this); builder.setMessage("确认退出吗?"); builder.setTitle("提示"); builder.s原创 2017-02-23 08:27:48 · 264 阅读 · 0 评论 -
android 内存优化
之前,自己做开发时,代码关注的主要是功能的实现,不过随着app的功能越来越多,代码量越来越大时,发现很多地方出现了app的卡顿现象,所有特意在网上搜集了一些内存优化的资料。这里只是简单记录一下,如果需要知道的详细,大家可以到网上搜索资料。1.2 查看最大内存限制ActivityManager mActivityManager = (ActivityManager)getSystemSe原创 2017-03-03 08:22:43 · 269 阅读 · 0 评论 -
Tomcat设置https访问
昨天,自己做服务器的安全传输,在登录时用的是http协议,结果自己用抓包的软件抓到后,发现数据完全可以看到。组长说这样明文传输太不安全了,必须要加密才可以。在网上搜索了资料,发现https的安全性较高,所有尝试用tomcat做一个https的服务器。网上很多教程都是不正确的,自己花了很多时间才把tomcat的https服务器搭起来,然后用android客户端进行访问,最终做了出来。1.原创 2017-02-24 08:16:55 · 370 阅读 · 0 评论 -
android 访问https服务器
之前,我讲了如何让tomcat支持https访问,当时浏览器通过https:localhost:8443即可访问tomcat。可是android此时如何访问已经搭建好的tomcat的https了?我在网上找了很多资料,发现还是有问题,后来自己改了一些,终于是做出来了。1.搭建tomcat的https服务器。这个,我之前的博客已经讲过,所有不在细讲了。2.将搭建tomcat服务器原创 2017-02-27 08:27:27 · 1448 阅读 · 0 评论 -
android spinner下拉框
下拉框其实自己很少用到,不过昨天因为写界面时,自己用到了,当时忘记怎么写,所以在网上找了一下资料,做了一个自定义的下拉框。这里,自己把所做的记录一下,以免自己以后还需要到网上查找。1.用android提供的spinner下拉框控件。1.在布局里添加一个spinner控件Spinnerandroid:layout_width="match_parent"原创 2017-03-10 08:13:03 · 2309 阅读 · 0 评论 -
android listview左滑删除
之前,自己使用listview一直是长按删除,不过发现qq的消息和ios的都是侧滑删除,觉得效果很好,于是自己就想做一个侧滑删除。在网上找了些资料,有很多不是我理想的侧滑删除,最后还是找到了一个不错的,现在记录一下。首先是自定义一个listview,这个里面需要重写onInterceptTouchEvent和onTouchEvent两个代码,一个是对滑动进行拦截,如果删除按钮已经显示,原创 2017-03-28 08:52:04 · 8655 阅读 · 10 评论 -
android 打包时报错解决
之前,我在做公司的app时,功能已经全部实现,在手机上也可以正常运行,可是在打包时却一直报错\build\intermediates\res\resources-anzhi-debug-stripped.ap_' specified for property 'resourceFile' does not exist,所以在网上找了很多的资料。 网上的解决代码千奇百怪,有的说原创 2017-03-21 08:34:58 · 2428 阅读 · 0 评论 -
android listview设置选中时的item的背景色
今天实在不知道写些什么内容,所以自己在网上找了些资料,觉得还可以,所以还是写一下,觉得每天写些东西的习惯不能荒废。默认情况下使用ListView背景色是黑色,选中item的高亮颜色是菊黄色,很多时候不得不自己定义背景色或者背景图android:cacheColorHint="@android:color/transparent",意思为去黑色底色,比如ListView滚动时会刷新界面,默认原创 2017-04-07 08:38:53 · 7398 阅读 · 0 评论 -
android object比较大小
其实这个比较大小自己也没用到,不过之前看公司的代码时发现了这个比较大小的代码,所以特地记录一下。首先定义一个自己的比较器comparator,需要实现其中的 Comparator这个接口,因为使用list的sort的代码时,源码用到了二分排序。然后我们自定义比较大小的代码就可以了。具体的代码:private class SortComparator implements Compa原创 2017-03-22 09:01:33 · 1314 阅读 · 0 评论 -
android 字符串的拆分
当我在做一些功能时,总是避免不了把字符串拆分,然后获取所需的内容。但是,自己所只到的split却不是很全面,所以在网上搜索了一些资料,把这个知识点弄懂,在这里也记录一下。 String s3 = "Real-How-To"; String [] temp = null; temp = s3.split("-");原创 2017-03-29 08:17:05 · 6142 阅读 · 0 评论 -
android dip转px
今天其实没有什么想写的代码,不过自己仍然想坚持写一些东西。这次就写写dip与px直接的转换。dp(dip): device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。dp也就是dip,这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或sp。但如原创 2017-03-23 08:29:32 · 731 阅读 · 0 评论 -
android 走马灯效果
最进其实自己也没什么想写的内容,不过自己觉得还是需要每天写点东西,好的习惯还是要保持的。所以今天讲讲textview的文字显示走马灯的效果,这个实在太简单了。项目开发中有些时候TextView的文本内容太长了显示不全,这个时候需要让它实现像网页上面的跑马灯效果,网上很多文章都是自定义控件继承自TextView来实现的,自己在实践中发现不用自定义控件也可以实现跑马灯的效果,因为Android原生原创 2017-03-30 08:25:34 · 792 阅读 · 0 评论 -
android 导入so库文件
昨天,自己又把so库导入项目,当时做的时候出现错误,后来在网上搜素了资料就解决了。自己感觉自己对导入so库还是不熟练,所以在这里就简单记录一下。1.在src/main中添加 jniLibs文件夹 ,把.so复制进去,或者把在lib目录下新建armeabi文件夹,把so库文件添加到该文件夹下。2.完成之后,编辑app目录下的build.gradle文件,在android结点下,为其添原创 2017-03-31 08:35:58 · 1053 阅读 · 0 评论 -
android 判断ip地址合法
昨天,我在网上找了一下判断文本框内的字符串是否是合法的ip地址,自己想到了正则表达式,可是自己对这个却不熟,所以在网上查找了一些资料,最后终于是做出来了。具体的代码很简单, public boolean isIP(String addr) { if(addr.length() 15 || "".equals(addr))原创 2017-03-24 08:23:39 · 7064 阅读 · 1 评论 -
android 打包jar包
昨天,自己用到别人的jar包的内容,后来,公司要求在之前的基础上增加几个功能,所以需要修改jar包的内容。别人的源代码给了我,我修改后进行打包成jar包。不过自己却不会用android studio 打包成jar包,所以在网上找了一下资料,终于成功打包成jar包。在AndroidStudio中将项目打包成jar包的方法: 在build.gradle文件中,修改下面两个地方:(1)app原创 2017-03-15 08:22:08 · 573 阅读 · 0 评论 -
android 非法字符 \ufeff错误
android studio导入项目老是会报错,我自己也是遇到一个就去网上搜索资料解决一个。昨天,自己导入海康的sdk Demo看看效果时,发现android studio报非法字符 \ufeff错误。自己在网上搜了解决代码,发现问题很简单,所以很快就解决了,但是这里还是要记录一下。'\ufeff' 解决方案,细细一想编译器没报错,但编译出错,应该是隐蔽字符BOM的问题原创 2017-04-01 08:27:33 · 704 阅读 · 0 评论 -
android 图标制作
昨天,经理让我把app的图标换一下,但是给我的却是只有一张175*175的图标。要知道,android 需要根据手机的大小设置不同大小的图标,所以app里必须要有5张不同大小的图标,图标的大小分别为72*72,48*48,96*96,144*144,192*192。所以必须自己根据一张图片制作不同大小的图片。自己在网上搜索了一下,其实用Photoshop制作就非常简单,最终制作了出来,原创 2017-04-11 08:24:59 · 5260 阅读 · 1 评论 -
android intent传递数据
说到intent传递数据,其实我是经常用到,不过之前用的都是简单的传递String,int,boolean的简单数据。昨天,我需要传递一个自定义的实体类时,发现自己不会,所以在网上搜索了一些资料,自己做了出来。现在把intent的使用整理一下,以后方便使用。1.intent传递简单数据。这个太简单了,发送数据只需 intent.putExtra("key", "value"); 或者原创 2017-03-16 08:14:51 · 927 阅读 · 0 评论 -
android 6.0动态权限问题
最近,我发现手机的6.0权限在小米手机上存在问题,我在网上搜了很多的代码,都没有解决这个问题,所以这里记录一下自己的android 6.0权限的解决代码,如果有问题,大家可以在网上自己在找找代码去解决,不过,我发现大部分是一样的。1.通过设置build.gradle文件来适配android 6.0.这个很简单,只要把targetSdkVersion设置为23一下就可以,这是告诉手机原创 2017-04-12 08:37:39 · 845 阅读 · 0 评论 -
android fragment onHiddenChanged的使用
昨天,我看公司app的代码时,发现了onHiddenChanged的代码,刚开始我不知道是用来做什么的,后来在网上搜索了一下资料,也终于弄懂了。项目中,为了实现不同fragment之间值得传递,首先想到的是利用bundle或者shareprefercnce之类的共享数据机制,当不符合项目需求,有点过于复杂和冗余,就利用网上一位前辈的建议,在主Activity中,创建一个共享原创 2017-03-17 08:28:56 · 14740 阅读 · 0 评论 -
android contentDescription的使用
最近,工作比较忙了,所以也没有时间写比较好的博客,但是我想把每天写博客的习惯保持下来,所以今天还是写点东西。今天就随便讲讲android的contentDescription的使用。说到这个,很多人估计都不知道用这个功能,其实我之前也不知道,后来看到代码里用到这个,在网上查找后,知道这个的用法。所以这次记录一下。在Android控件中有一个属性叫做android:con原创 2017-04-13 08:16:35 · 3443 阅读 · 0 评论 -
android 判断网络是否可用
今天也是没有什么好写的,但是自己的强迫症似乎又犯了,觉得每天写博客的习惯不能改,所以在网上搜索了资料,写了这些内容。一。检查网络是否可用,并且弹出提示框,用户可以去设置网络。package com.example.network;import android.content.Context;import android.net.ConnectivityManager;imp原创 2017-04-28 08:39:41 · 24110 阅读 · 2 评论