技术分享
Huige1113
我是安卓工程师
展开
-
安卓项目修改包名需要注意事项
1:Android Annotation框架反射生成的类会报错,因为清单文件没配好,系统找不到相应的类。 2:gen文件夹下的包名也要改,要不找不到相应的R文件,也不会反射生成_类。 3:例如百度sdk,科大讯飞的一些API接口的key要重新申请(key的生成和包名有关) ps:另外安卓系统是通过包名来判断是不是同一程序的,所以就出现了以下一幕:原创 2016-03-09 12:56:12 · 752 阅读 · 0 评论 -
StartActivityForResult的用法
Intent intent = new Intent(LoginActivity.this,RegisterActivity.class); startActivityForResult(intent, 201);//请求码 从登录页跳转到注册页 注册页finish之前把数值传回来 Intent intent=new Intent(); intent.putEx原创 2016-03-09 22:12:36 · 540 阅读 · 2 评论 -
onSavaInstanceState的用法
这里写代码片 package com.example.activitystate;import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.util.Log; import android.view.Menu; import android.view.Vie原创 2016-03-12 23:46:31 · 600 阅读 · 0 评论 -
谈下openfire心跳包检测的问题
最近在开发即时通讯客户端遇到了一个问题,就是网络正常的情况下,和openfire服务器正常通讯。如果长时间没接到消息,客户端和服务器的连接就会断开。经过测试,发现openfire每三分钟就会ping一次客户端,客户端会pong回应服务端。但是这样ping-pong几次后,发现客户端就接受不到服务器的ping信息了,而服务器发现客户端没pong,就把客户端的会话关闭了。这是上面那个问题的原因。至于为原创 2016-12-31 23:23:03 · 2998 阅读 · 0 评论 -
smack 4.1.4开发安卓的注册方法
//smack 4.1.4版本的注册 public static IQ regist(String accounts,String password) throws SmackException.NotConnectedException { Map attributes = new HashMap(); attributes.put("username", accounts);原创 2017-03-18 10:41:26 · 822 阅读 · 0 评论 -
使用ViewPager来加载图片和轮播视频
使用ViewPager来加载图片和轮播视频 作为android基础组件之一,大家对viewpager已经很熟悉了,网上也有很多使用viewpager来加载图片的案例。但是像微信那样点击图片,可以轮播显示图片和视频的例子却没找到。正巧项目中有需求,可以就花时间写了下,现在给一下核心代码,希望对有此需求的同学们起一个抛砖引玉的作用。话不多说了,上代码: 以下是initData的代码“` pub原创 2017-03-12 00:24:53 · 5891 阅读 · 16 评论 -
Android 设计Bundle而不是直接使用Map的原因
Bundle内部是由ArrayMap实现的,ArrayMap的内部实现是两个数组,一个int数组是存储对象数据对应下标,一个对象数组保存key和value,内部使用二分法对key进行排序,所以在添加、删除、查找数据的时候,都会使用二分法查找,只适合于小数据量操作,如果在数据量比较大的情况下,那么它的性能将退化。而HashMap内部则是数组+链表结构,所以在数据量较少的时候,HashMap的Entr...转载 2018-03-09 17:33:28 · 833 阅读 · 0 评论