
Android
文章平均质量分 69
灵魂颤抖吧
这个作者很懒,什么都没留下…
展开
-
apt & annotationProcessor & kapt (gradle支持及版本说明)
目录Android Gradle 插件版本升级到 2.2 及以上:kotlin中什么是APT?随着一些如ButterKnife,dagger等的开源注解框架的流行,APT的概念也越来越被熟知。APT(Annotation Processing Tool 的简称),可以在代码编译期解析注解,并且生成新的 Java 文件,减少手动的代码输入。现在有很多主流库都用上了 APT,比如 Dagger2, ButterKnife, EventBus3、DataBinding、DBFlow、 Andr转载 2021-04-06 17:33:33 · 1178 阅读 · 0 评论 -
javac & jack (Android编译器的区别)
目录javacjack (已经被google废除)javac在没有jack以前,google一直使用的sun/oracle的java编译器javac用作android的官方编译器。javac是jdk中的java编译器,将java文件编译成class文件,那么我们来看一下之前的Android的java文件是怎么一步一步变成可以在dalvik虚拟机中运行的dex文件的。javac的Android编译流程我们看到之前的整个流程大致如上图描述的首先由javac将我们的...转载 2021-04-06 17:17:48 · 721 阅读 · 0 评论 -
Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后台服务器代码就比较复杂,对于我这新手来讲就比较难了。后来在网上看到用openfire做服务器,利用强大的Smack API库来实现IM聊天就简单多了。 网上也有很多关于这方面的资料,我就在这里把网上的资料和自己的理解总结一下和大家一起交流学习。需要用到以下几个工具:Openfire转载 2013-05-02 11:07:36 · 1084 阅读 · 0 评论 -
Android 推送通知指南
在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相对比较麻烦,最近利用几天的时间对Android的推送通知服务进行初步的研究。在Android手机平台上,Google提供了C2DM(Cloudto Device Messaging)服务,转载 2013-03-25 10:27:40 · 1062 阅读 · 0 评论 -
android中的所有activity间动画跳转
在之前的一篇博客里介绍过activity间动画跳转的问题,但是真正做软件发现并不能满足我们的要求,因为使用overridePendingTransition(int enterAnim, intexitAnim)这个函数只能实现进入另一个activity的动画,当另一个activity退出时,还是使用的系统动画。所以在这里讲一下怎么设置所有activity的动画跳转和退出跳转。其实有些软件已经这样转载 2013-04-09 09:22:17 · 969 阅读 · 0 评论 -
android之调用系统打电话与发短信界面
系统打电话界面:Intent intent = new Intent();//系统默认的action,用来打开默认的电话界面intent.setAction(Intent.ACTION_CALL);//需要拨打的号码intent.setData(Uri.parse("tel:"+i));this.startActivity(intent);原创 2013-04-03 13:59:05 · 829 阅读 · 0 评论 -
android之Notification通知
我们在用手机的时候,如果来了短信,而我们没有点击查看的话,是不是在手机的最上边的状态栏里有一个短信的小图标提示啊?你是不是也想实现这种功能呢?今天的Notification就是解决这个问题的。[java] view plaincopypackage cn.com.chenzheng_java; import android.ap转载 2013-04-01 16:23:20 · 713 阅读 · 0 评论 -
android-如何获得当前正在运行的activity的相关信息
ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); RunningTaskInfo info = manager.getRunningTasks(1).get(0); String shortClassName = info.topActi原创 2013-03-31 15:48:24 · 851 阅读 · 0 评论 -
XMPP——Smack[1]离线消息实现
注意事项:1、登录前要将状态设置为离线:ConnectionConfiguration connectionConfig = new ConnectionConfiguration(192.168.1.82, 5222, "");connectionConfig.setSendPresence(false);ASmackMainActivity.connection = n原创 2013-03-27 16:35:02 · 7099 阅读 · 5 评论 -
android面试题
1. 下列哪些语句关于内存回收的说明是正确的? (b ) A、 程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 2. 下面异常是属于Runtime Exception 的是(abcd)(多选) A、转载 2013-01-18 11:45:26 · 682 阅读 · 0 评论 -
android 去掉listview之间的黑线
方法1:listView.setDividerHeight(0);方法2:this.getListView().setDivider(null);方法3:android:divider="@null"android:cacheColorHint="#00000000" 设置其为透明! 默认为黑色!=======================================原创 2013-01-22 17:41:23 · 1165 阅读 · 2 评论 -
屏蔽EditText自动获取焦点
在EditText的父级控件中添加属性:android:focusable="true" android:focusableInTouchMode="true" 大功告成,测试通过。原创 2013-01-16 16:01:30 · 2954 阅读 · 1 评论 -
apk签名
1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装)。2.签名的步骤 a.创建key b.使用步骤a中产生的key对apk签名3.具体操作 方法一: 命令行下转载 2013-01-07 11:06:45 · 2449 阅读 · 0 评论 -
android学习笔记之弹出单选框
JAVA代码:package com.meiguihuayu;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.Bundle;import android.view.Vi转载 2013-04-22 12:15:13 · 6303 阅读 · 0 评论 -
Intent传递Object之Parcelable
1、现将要传递的值,封装成bean。2、bean必须实现Parcelable。写法如下:public class User implements Parcelable { privateint id; privateString name; privateString psw; privateint statu原创 2013-04-22 12:16:06 · 2857 阅读 · 0 评论 -
Design库-TabLayout属性详解
转自:http://www.jianshu.com/p/2b2bb6be83a8序上图是简书Android端的主页Tab,在其他的App中Tab也是很常见的,它的实现方式也有很多:TabHost,自定义控件(第三方库),RadioGroup等等。这里主要介绍Android Design库中的TabLayout的使用。1.什么是TabLayout转载 2016-11-24 23:52:45 · 942 阅读 · 0 评论 -
Android 导入v7包常见错误,以及项目引用v7包错误解决,
android下v4 v7 v21等包是android系统的扩展支持包,就想windows的系统补丁一个道理。 android的扩展包主要是用来兼容低版本的,比如android3.0以后出现了actionbar,如果要使用actionbar,那么手机系统必须在3.0以上才能使用,这样将会导致很多用户不能安装apk从而损失用户;(有人会想,为什么不直接将新出来的东西全部打转载 2015-08-14 11:24:10 · 5677 阅读 · 0 评论 -
RelativeLayout常用属性介绍
下面介绍一下RelativeLayout用到的一些重要的属性: 第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical转载 2015-08-26 18:04:42 · 697 阅读 · 0 评论 -
android 4.0中关于webview加载flash并使flash全屏的问题(附demo)
android2.1及之前的版本是不支持flash的。android2.2开始之后开始支持flash。要使用webview加载flash首先手机应该安装flash插件;其次应该设置webSettings = mWebView.getSettings();webSettings.setJavaScriptEnabled(true);webSetti转载 2014-04-20 14:46:56 · 5319 阅读 · 3 评论 -
获取Android签名证书的sha1值 百度地图
前言:今天开始研究LBS定位,使用百度定位API,但要用到签名,百度帮助文档上写了两种方法,坑爹,不能直接用,最后使用keytool工具完成的,下面是解决过程;一、百度官方方法第一种:使用keytool keytool -list -v keystorefile -storepass 123456其中keytool为jdk自带工具;keystorefile为A转载 2014-03-13 15:59:18 · 5090 阅读 · 0 评论 -
Android 调用系统默认浏览器
一、启动android默认浏览器 Intent intent= new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse("http://www.cnblogs.com"); intent.se转载 2013-12-30 14:38:01 · 1332 阅读 · 0 评论 -
Android启动过程中背景图片显示
大部分Android App启动过程中,都会设置一个背景图片,直到App加载成功,图片消失。因此,这也是做Android App的基本技能之一。这个过程实现起来并不难。总共需要以下内容:2个Activity,一张背景图,2个xml配置文件,String.xml,AndroidManifest写入配置信息。1 准备一张背景图图片,命名为load,自己选择图片格转载 2013-11-28 09:59:19 · 13197 阅读 · 3 评论 -
android EditText插入字符串到光标所在位置
EditText mEditText = (EditText)findViewById(R.id.input);//EditText对象 int index = mEditText.getSelectionStart();//获取光标所在位置 String text="I want to input str"; Editable edit = mEditText.ge原创 2013-05-15 09:42:23 · 827 阅读 · 0 评论 -
apk签名后,优化。
使用zipalign工具优化已签名的apk(非必须但建议这么做) zipalign -v 4 notepad_signed.apk notepad_signed_aligned.apk说明: 1)zipalign是工具名称,-v表示在DOS窗口打印出详细的优化信息; 2)notepad_signed.apk notepad_signed_aligned原创 2013-05-13 14:13:30 · 3688 阅读 · 0 评论 -
.9文件,展示后显示黑条问题的解决
用官方自带的图片处理工具,处理图片时,有的时候,处理后的图片,显示出来后,黑线是显示的,很难看,不是自己想要的。后来从网上找到了另一个图片处理工具,这个工具很好,解决了之前的问题,而且可以自动加黑线,感觉很爽。所以分享一下。名字叫Nine-Patch Editor下载地址:http://download.youkuaiyun.com/detail/zhangzhikaixinya/5353667原创 2013-05-10 17:31:59 · 1135 阅读 · 0 评论 -
android 界面更新之runOnUiThread()
如果你对于Android的Thread+Handler方式感觉繁琐,不妨试试Activity提供的另外一种简单的方法runOnUiThread,runOnUiThread可以帮助你在线程中执行UI更新操作,我们只需要在线程中写上类似 android123.this. runOnUiThread(new Runnable() {转载 2012-12-19 16:18:03 · 1697 阅读 · 0 评论 -
LayoutInflater和inflate()方法的用法
LayoutInflater作用是将layout的xml布局文件实例化为View类对象。实现LayoutInflater的实例化共有3种方法,(1).通过SystemService获得 LayoutInflaterinflater = (LayoutInflater)context.getSystemServices(Context.LAYOUT_INFLATER转载 2012-12-14 09:48:29 · 900 阅读 · 0 评论 -
在android虚拟机AVD上安装apk应用
1. 首先启动Android模拟器2.将Android的adb配置到环境变量,adb.exe大概在platform-tools文件夹下。3.安装本地apk文件:打开cmd黑屏,输入:adb install E:\android-sdk-windows\tools\qq.apk(最后的为apk的路径)转载 2012-11-21 11:28:39 · 3811 阅读 · 0 评论 -
解决输入框在底部问题
今天在做输入框在底部时,最先是在使用AndroidMaifest.xml中使用的adjustPan,但是每当EditText获得焦点的时候软键盘都会定位在EditText的光标下,正好遮挡住一小部分EditText,用户体验很差。后来改用在AndroidMaifest.xml中使用的stateHidden|adjustResize,其中stateHidden是为了让首次进入页面是阻止软件盘的弹原创 2012-08-07 19:19:22 · 1378 阅读 · 0 评论 -
重新调整布局的宽度和高度
1.常见错误的设置如果是mWebview对象的话,如果在xml文件已经定义了高度和长度LayoutParams params = new LayoutParams(LayoutParams.FILL_PARENT,200);mWebview.setLayoutParams(params);运行之后出现logW/dalvikvm(12945): threadid=1: thr原创 2012-08-06 09:14:30 · 888 阅读 · 0 评论 -
Android动画效果 translate、scale、alpha、rotate 切换Activity动画 控件位置调整
2011.10.28注:如果需要控件停在动画后的位置,需要设置android:fillAfter属性为true,在set节点中。默认在动画结束后回到动画前位置。设置android:fillAfter后,我们看到了控件留在了动画后的位置,其实也只是看到在那个位置,真实位置还是在原来动画前那里,你会发现Button不能被点击,就是这个原因。所以我们可以在动画结束后,手动把控件移动到动画结束后的位置。这转载 2012-08-04 19:13:20 · 1356 阅读 · 0 评论 -
EditText之边框颜色
EditText的自带属性里没有设置边框颜色的有俩种方式可以达到效果一种是网上比较推崇的用图作背景,另一种则是自绘图作背景的: 首先重新定义一个style。在values文件夹下新建一个style.xml文件: @drawable/my_editt转载 2012-08-04 11:12:47 · 9063 阅读 · 0 评论 -
android中去掉标题栏和状态栏,实现全屏
this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);//去掉信息栏 注意,这转载 2012-07-18 18:28:20 · 821 阅读 · 0 评论 -
android 捕获返回(后退)按钮事件的两种方法
第一种方法:public void onBackPressed() { //code...... }第二种方法: public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode==KeyEvent.KEYCODE_BACK && event.getRepeatC转载 2012-07-17 19:15:10 · 16768 阅读 · 1 评论 -
Android 动态加载布局
由于前段时间项目需要,需要在一个页面上加载根据不同的按钮加载不同的布局页面,当时想到用 tabhot 。不过美工提供的界面图完全用不上tabhot ,所以想到了动态加载的方法来解决这一需求。在这里我整理了一下,写了一个 DEMO 希望大家以后少走点弯路。首先,我们先把界面的框架图画出来,示意图如下:中间白色部门是一个线性布局文件,我喜欢在画图的时候用不同的颜色将一块布局标示转载 2012-07-17 10:36:58 · 815 阅读 · 0 评论 -
Android ListView入门
本文来自http://blog.youkuaiyun.com/hellogv/ ListView是一个经常用到的控件,ListView里面的每个子项Item可以使一个字符串,也可以是一个组合控件。先说说ListView的实现:1.准备ListView要显示的数据 ;2.使用 一维或多维 动态数组 保存数据;2.构建适配器 , 简单地来说, 适配器就是 Item数组转载 2012-07-15 16:42:50 · 450 阅读 · 0 评论 -
Android ListView入门(二)
本文来自http://blog.youkuaiyun.com/hellogv/ Android入门第六篇之ListView (一) ,讲的是如何制作一个具有两行文本的 自定义控件 ,作为ListView的Item的使用方法。这篇接下来也是围绕ListView和Item,更加深入地介绍它们的用法。 首先,先来看看本文代码运行的结果,本文的Item比上一篇中的Item多出左边转载 2012-07-15 16:48:31 · 635 阅读 · 0 评论 -
Android弹出框
Toast.makeText(getApplicationContext(),"第" + currentPage + "页", Toast.LENGTH_LONG).show();其中("第" + currentPage + "页")为弹出框中显示的内容原创 2012-07-12 15:17:53 · 628 阅读 · 0 评论 -
Android用ImageView显示本地和网上的图片
ImageView是Android程序中经常用到的组件,它将一个图片显示到屏幕上。在UI xml定义一个ImageView如下:public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.myimage);ImageVi转载 2012-07-09 15:15:21 · 839 阅读 · 0 评论 -
按back键直接退出Activity,不关闭软键盘
自定义一个layout,覆写dispatchKeyEventPreIme(KeyEvent event)方法,请看QuickSearchBox的源码/* * Copyright (C) 2010 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"转载 2012-07-25 17:36:14 · 2003 阅读 · 0 评论