`
xiaozilong88
  • 浏览: 24122 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
文章列表
1. ListView需要设置adapter,它的item是通过adapter的方法getView(int position, View convertView, ViewGroup parent)获得的。 2. ListView中只有第一屏的item需要新建,它的引用会被存在RecycleBin对象内,在拖动时后面的item实际上是重从了之前创建的item。 3. 根据上述,ListView在需要显示item时,最开始第一屏时,getView(int position, View convertView, ViewGroup parent )的第二个参数为null,显示第二屏或者回滚显示第一屏 ...
Android上替换Launcher有两种方法,一种是将img烧到设备上时,将Launcher打进去,另外也可以试着替换Launcher。这里先测试第二种。 想修改替换以下Android里的Launcher, 但是Laucher所在的目录/system/app是只读的。 需要先通过remount将其设置为rw。 具体操作: lixinso@lixinso-desktop:~$ adb devices List of devices attached emulator-5554    device lixinso@lixinso-desktop:~$ adb shell # mount ...
随着移动平台的发展和其应用的不断改善,质量成为决定成败的关键。用户要求他们选择安装的应用响应快、性能好,如果某个应用不能提供卓越的功能和稳定的用户体验,那这样的应用注定会被很快卸载。 尽管现在Android智能 ...
  关于服务器端向Android客户端的推送,主要有三种方式:轮询,应用程序应当阶段性的与服务器进行连接并查询是否有新的消息到达,你必须自己实现与服务器之间的通信,例如消息排队等。而且你还要考虑轮询的频率,如果太慢可能导致某些消息的延迟,如果太快,则会大量消耗网络带宽和电池;SMS(通过发送短信并解析短信内容来获取服务器端的指令),这个出现的问题是很难找到免费的网关来发送短信;最后就是持久连接,主要是Socket通讯,这个解决了性能问题,但是耗电问题依旧没能解决。 在这里,我们主要介绍的是第三种,用持久连接的方式来进行推送。现在比较成熟的及时消息传递协议共有四种,而无疑最为主流就是XMPP协议 ...
Apndroid Push Notification的特点: 快速集成:提供一种比C2DM更加快捷的使用方式,避免各种限制.  无需架设服务器:通过使用"云服务",减少额外服务器负担. 可以同时推送消息到网站页面,android 手机 耗电少,占用流量少. 具 ...
很多人刚学习程序流一章的时候,就是搞不清楚In和Out,不知道什么时候用in什么时候用out,所以一部分人采取死记硬背的方式,诸如如下这位: BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream("infilename"))); ...
Android中Toast的显示时间为特定时间且不可更改,但是有时候我们开发设计需要让Toast显示更长时间,或者自己完全控制Toast的显示和关闭。通过查看Toast类的源码,可以看出,这有点难为它了,Toast类本身并没有提供相应方法。 但是通过源码的查看,还是可以看出点眉头。源码分析思路在这里转eoe里的一篇文章,思路较为清晰: 转:   Toast信息提示框之所以在显示一定时间后会自动关闭,是因为在系统中有一个Toast队列。系统会依次从队列中取(出队列)一个Toast,并 显示它。在显示一段时间后,再关闭,然后再显示下一个Toast信息提示框。直到Toast队列中所有Toast都显示完 ...
按照官方说明,在发布android 2.3的时候在sdk里已经集成了proguard混淆器功能,因此只要你的sdk有proguard功能,就算你新建的是2.2或以下的项目也是可以混淆的,不 过需要copy一个proguard.cfg文件到项目根目录下。 开启混淆功能只需 ...
但凡接触过ADV都知道 android 的app 有个 AndroidManifest.xml 里面定义了配置信息,版本、所需权限、activity的结构等等等等. 关于版本号有两个值,如下面的例子 <manifest ... android:versionCode="2" android:versionName="1.1"> 分别有 versionCode 和 versionName, 前者是给设备程序识别版本(升级)用的必须是一个interger值代表app更新过多少次,后者是给用户看的。 刚好今天在思考这个问题,当我的app需要校对版 ...
寄存器 Registers 描述smali文件中寄存器的具体信息,并概括在dalvik字节码中的信息。 介绍Introduction 在dalvik字节码中,寄存器总是32位,能够保存任何类型的值。2个寄存器用来保存64位的类型(Long和Double)。 说明方法中寄存器的个数 有两种方法指定方法中有多少个寄存器可用。类似  .registers的指令,指明了方法中总的寄存器数目;另一中 .locals指令,指明了方法中不包括参数(函数入参)在内的寄存器数目。方法中总的寄存器数目包括保存locals(本地变量)所需的和保存函数参数所需的寄存器数目。 方法的参数是怎样传递到方法中的? ...
最近发现公司换了新电脑后,在项目加入混淆之后,导出都会提示     Conversion to Dalvik format failed with error 1  从网上看到的都是转来转去的解决方法:     android低版本工程(如1.5)放到高版本环境中(如2.2)可能会上述错误,解决方法如下:      1。 如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。             (该处理方式只是在高版本中兼容了低版本工程,未真正意义上的升级)      2。 如果修改android sdk版本,则需要以下几个步骤:  ...
今天在做自定义的可选文本的 TextView 类时,用到了 View 类的 setOnTouchListener(OnTouchListener l)事件监听,在构造 OnTouchListener 对象时需要重写 onTouch(...)方法,这个方法的返回值是布尔类型,   刚开始我按默认给定的返回值 false运行,发现只能监听到这个 view 的“按下”事件,“移动”和“抬起”都不能够监听到;于是把返回值改为了 true,就都监听到了。   但是随后又遇到了一个问题,那就是:点击其他组件后,再点击这个 view 的时候获取不到焦点!也就是click事件不响应了。我猜想一定是受到了 o ...
Global site tag (gtag.js) - Google Analytics