摘要:
zipalignzipalign is an archive alignment tool that provides important optimization to Android application (.apk) files. The purpose is to ensure that all uncompressed data starts with a particular alignment relative to the start of the file. Specifically, it causes all uncompressed data within the . 阅读全文
摘要:
之前在做 APP 的时候不太关注这个问题,因为自己在使用其他 APP 的时候也会在应用启动的初始有一个黑屏闪过后才会出现应用的欢迎页。直到最近开发过程中发现自己在欢迎页启动的线程由于请求和处理的数据量过大而,导致欢迎页在出现之前界面上会有一个短暂的白色闪屏停留,当然白色闪屏的停留是因为applica... 阅读全文
摘要:
通过如下这种方式给 TextView 添加的链接支持链接样式、点击事件、href 样式,代码如下:package cn.sunzn.tlink;import android.app.Activity;import android.os.Bundle;import android.text.Html;import android.text.Spanned;import android.text.method.LinkMovementMethod;import android.view.Menu;import android.widget.TextView;public class MainAct 阅读全文
摘要:
在实际开发中,当数据为固定数据、数据量不是很大、希望很方便的获取到这些数据的时候,可以考虑使用这种低成本的方式来获取预装数据。将想要保存的数据存储到 values 文件夹下的 arrays.xml 文件中,格式如下: 北京 天津 太原 西安 郑州 然后在应用中通过以下方式即可获取到 name 为 city 数组集下的所有数据:Resources res = getResources();String[] city = res.getStringArray(R.array.city); 阅读全文
摘要:
为了确保对应用中 Activity 的创建和销毁状态进行控制,所以就需要一个全局的变量来记录和销毁这些 Activity。这里的大概思路是写一个类继承 Application,并使获取该 Application 的实体为单例模式,在新的 Activity 被创建时在对应 Activity 的 onCreate 方法中将自己存入 Application 的集合中,然后在应用退出时将 Application 存有的 Activity 逐个进行销毁即可完全退出应用。代码如下:package cn.sunzn.app;import java.util.ArrayList;import java.uti 阅读全文
摘要:
某些情况下会用到这种非主流的转换方式,最近项目中用到,记录下。ByteArrayOutputStream baos = new ByteArrayOutputStream();bm.compress(Bitmap.CompressFormat.PNG, 100, baos);InputStream isBm = new ByteArrayInputStream(baos.toByteArray()); 阅读全文
摘要:
在安卓 APP 的手机号注册逻辑中,经常会有将激活码发送到手机的环节,这个环节中绝大多数的应用考虑到网络延迟或服务器压力以及短信服务商的延迟等原因,会给用户提供一个重新获取激活码的按钮。如下图所示:同样,为了防止用户恶意的频繁发送激活码,应用中需要对用户发送激活码的时间间隔进行限制,这时就需要用到倒计时器了,大概流程是这样的:页面初始化的时候,按钮为可点击状态,用户在点击“发送激活码”后按钮变为不可点击状态,同时按钮上的文字变为倒计时状态,倒计时结束后,按钮变为可点击状态,文字变为“发送激活码”。具体逻辑看下面的代码:package cn.sunzn.countdown;import andr 阅读全文
摘要:
使用了极光推送的 jar 包项目在从 SVN 中检出后,如果不重新对 jar 包和 Bulid Path 进行配置就会抛出 java.lang.NoClassDefFoundError: cn.jpush.android.api.JPushInterface 的错误,进行如下操作即可消除这种错误:删除 libs 文件夹下的 jpush-sdk-release1.3.8.jar(极光推送的 jar 包),重新在 libs 文件夹中加入 jpush-sdk-release1.3.8.jar 并 Add to Bulid Path。选中项目点击右键 → Bulid Path→Configure Bu 阅读全文
摘要:
TraceView 是 Android 平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到 method。详细内容参考:Profiling with Traceview and dmtracedumpTraceView 简介TraceView 是 ... 阅读全文
摘要:
package com.sunzn.app.util;import android.util.Log;public class Logger { public static int DEBUG_LEVEL = 6; private static final int VERBOSE = 5; private static final int DEBUG = 4; private static final int INFO = 3; private static final int WARN = 2; private static final int ERROR... 阅读全文