安卓 - 技术教程文章

Android开发心得-使用File ExPlorer无法访问系统内部文件

问题:本机在获得ROOT权限后,使用Eclipse自带的File Explorer访问/data/data下各APP的存储文件,均无法打开。更换另外一个设备后,情况正常。Sumsung的有些机型在获得ROOT权限系统后,仍然不能读写系统文件,这个时候就需要我们使用adb为文件夹赋予权限了 解决办法:在配置好adb后,cmd进入命令行,按序号依次输入如下命令 1. adb shell 2. su (在PC输完此命令后,正常情...

Android 百度地图 SDK v3.0.0 (四) 引入离线地图功能【图】

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37758097一直觉得地图应用支持离线地图很重要啊,我等移动2G屌丝,流量不易,且用且珍惜。对于官方开发指南对于离线地图的教程,提供了两种方案:第一,手动导入,先将从官网下载的离线包解压,把vmp文件夹拷入SD卡根目录下的BaiduMapSDK文件夹内。好吧,我表示不能接受,无视了。第二,接口下载方法如下:mOffline.start(cityid);还比较靠谱,就是没详细介绍。...

详解Android广播机制【代码】

应用场景(常见的场景1)  (1)同一应用具有多个进程的不同组件之间的消息通信a)不同应用间的组件之间的消息通信b)与Android系统在特定情况下的通信,如:系统开机,网络变化等  (2)同一应用内同一组件的消息通信:显然扩展变量的作用域、接口回调、Handler-Message等方式都能更简单的实现。  (3)同一应用内的不同组件之间的消息通信(单个进程):对于简单的的情况,依靠接口的回调方式就可解决;而较为复杂的情况,更推荐直接使用...

安卓 使用LruCache 加载图片 遇到的问题

本来 使用listview的时候 加载大图片的时候 会遇到内存溢出而导致崩溃。 但是使用LruCache的时候 原本以为可以 解决这个问题。 但是发现还是出现了内存溢出的情况。 困扰很久另外,在图片下载完毕 保存在本地后,却发现读取大量图片的时候 ,利用lrucache 却不会内存泄漏而导致崩溃。最后经过查看日志 发现, 在网络加载的时候 很吃内存,随着不断产生线程去下载图片, 能够看到 虚拟机释放内存的时候基本起不到作用 每次最多...

Android项目引入actionbarsherlock作为library后混淆之后的异常

现象:Android APP中,引入actionbarsherlock 开源库作为滑动菜单,调试执行没有问题,项目混淆打包后,程序执行异常退出,截获异常log为:<span style="white-space:pre"> </span>java.lang.ExceptionInInitializerErrorat com.actionbarsherlock.app.SherlockFragmentActivity.getSherlock(Unknown Source)at com.actionbarsherlock.app.SherlockFragmentActivity.onTitleChanged(Unknown Source)at android.app.Activity.setTit...

老罗的android视频教程

不是从基础一步一步来的 是一些进阶的东西 链接:http://pan.baidu.com/s/1ntv78TF密码:go19原文:http://blog.csdn.net/veloi/article/details/38143303

COCOS2D-X之CPP调用Android函数Demo

希望这篇文章能够给大家带来帮助废话少说直接在COCOS2D-X自带的HelloCpp中添加代码如下:#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)#include <jni.h>#include "jni/JniHelper.h" #endifbool HelloWorld::init() {CCLayer::init(); #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)const char* pStr = "Cpp Call Java Function!!!";JniMethodInfo MethodInfo;bool BExist = JniHelper::getStaticMethodInfo(MethodInfo,"mm/n...

Android ListView焦点事件冲突问题与解决

Android ListView对于单纯列表展示是很好用的,但是一旦牵扯到对listView进行操作就会遇到各种各样的问题。比如保存Checkbox状态与item复用的冲突、遇到可获取焦点的控件比如说button、edxttext等与listView本身的点击事件冲突等。对于后者,这里不研究原因,只提供解决方案。如果listView之中只有button这样会抢夺焦点的控件,最好的建议是直接把button换成Textview,直接规避焦点问题。如果有些产品经理要求在listview的item中提...

window7 64位下Android studio 安装genymotion模拟器【图】

1、登录genymotion官网注册一个账号才能下载,注册号之后2、点击buy genymotion 3、选择free免费 点击download4、选择系统,点击get genymotion 可以选择没有vituaiBox,如果你安装有之后便进行下载了5、下载好之后双击安装即可6、根据提示下载一个版本的手机镜像文件,便可以运行7、点击start便可以运行了 二、Android studio 安装 genymotion插件1、(1)在Android Studio中选择File-->Settings,在出现的对话框左侧选择Plugins,然...

Android 趣味应用—— 短信编辑器【代码】【图】

修改短信数据库,从而生成任意手机号发送的短信。AndroidManifest.xml<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.dudon.fakesms"><uses-permission android:name="android.permission.READ_SMS"/><uses-permission android:name="android.permission.WRITE_SMS"/><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launche...

android Mediaplayer各种属性和方法简单介绍

主要涉及类:MediaPlayer (1) 当一个MediaPlayer对象被创建或者调用reset()方法之后,它处于空闲状态,调用release()方法后处于结束状态 1,一个MediaPlayer对象调用了reset()方法后,再调用其它方法可能会触发OnErrorListener.onError()事件,未调用reset()方法则不会触发 2,当Mediaplayer对象不再被使用时,最好调用release()方法对其进行释放,使其处于结束状态,此时它不能被使用 3,Mediaplayer对象被创建时...

Android子线程真的不能更新UI么【代码】

Android单线程模型是这样描述的:Android UI操作并不是线程安全的,并且这些操作必须在UI线程执行  如果在其它线程访问UI线程,Android提供了以下的方式:Activity.runOnUiThread(Runnable) View.post(Runnable) View.postDelayed(Runnable, long) Handler  为什么呢?在子线程中就不能操作UI么?  当一个程序第一次启动的时候,Android会同时启动一个对应的主线程,这个主线程就是UI线程,也就是ActivityThread。UI线程主要...

Android View绘制知识问答【代码】【图】

1.View的绘制流程分几步,从哪开始?哪个过程结束以后能看到view?  答:从ViewRoot的performTraversals开始,经过measure,layout,draw 三个流程。draw流程结束以后就可以在屏幕上看到view了。   2.view的测量宽高和实际宽高有区别吗?  答:基本上百分之99的情况下都是可以认为没有区别的。有两种情况,有区别。第一种 就是有的时候会因为某些原因 view会多次测量,那第一次测量的宽高 肯定和最后实际的宽高 是不一定相等的,...

Android ListView高度问题【代码】

有些页面中ListView只是整个页面的一小部分,需要上下滑动整个页面,ListView不让自己滑动,默认ListView只会显示第一个item。这个时候需要重新设置一下ListView的高度。如果ListView的item中有TextView并且TextView的行数大于1行,这个时候.重设ListView的高度却计算不出TextView的高度,会出现TextView只显示一行的情况。这个时候需要使用自定义的TextView,并且不要设置MaxLines这个属性。设置ListView高度的代码:public static...

Android捕捉图像后在SurfaceView上变形显示问题的处理【代码】

我们在Android中经常会使用SurfaceView编写自定义的摄像头,可是有的时候会经常会出现图像的变形,我们就会很郁闷的问这到底是为什么呢?其实这个最根本的原因是SurfaceView和PreViewSize的尺寸不是同一个比率。所谓PreViewSize就是在预览的时候帧数据的尺寸,SurfaceView是用来预览Camera的视图,它的尺寸也就是Screen全屏时候的大小。还有一个重要尺寸的是PictureSize,这个是拍照后图片的尺寸,就是所保存的结果图片的大小。 所...

Android 开发资源

1,安卓系统源码:https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/java/android/view/LayoutInflater.java 这是是LayoutInflater的源码地址其他的大家自己看着办吧。2,相关项目guthub:https://github.com/iQuick/SunDay/tree/master/Studio_v-1.1          https://github.com/PeterCxy第一个是个app源码,第二个是个大神。大家也都自己看着办吧。3,android developer:这...

android 回调函数使用简介

//1---定义回调函数 public interface GirdMenuStateListener { void onSuccess(); void onError(); } //2---使用的地方声明 和 调用 回调函数 传递结果public class GirdMenuViewPresenter { private GirdMenuStateListener listener; public void setListener(GirdMenuStateListener listener) { this.listener = listener; } public void loadData(final GirdMenuView gridMenuView) {...

Android 从零编写一个带标签 TagTextView【代码】【图】

最近公司的项目升级到了 9.x,随之而来的就是一大波的更新,其中有个比较明显的改变就是很多板块都出了一个带标签的设计图,如下:怎么实现看到这个,大多数小伙伴都能想到这就是一个简单的图文混排,不由得会想到鸿洋大佬的图文并排控件 MixtureTextView,或者自己写一个也不麻烦,只需要利用 shape 背景文件结合 SpannableString 即可。确实如此,利用 SpannableString 确实是最方便快捷的方式,但稍不注意这里可能会踩坑。priva...

android.view.WindowLeaked的解决办法【代码】

来源:按字面了解,Window Leaked大概就是说一个窗体泄漏了,也就是我们常说的内存泄漏,为什么窗体会泄漏呢? 产生原因: 我们知道Android的每一个Activity都有个WindowManager窗体管理器,同样,构建在某个Activity之上的对话框、PopupWindow也有相应的WindowManager窗体管理器。因为对话框、PopupWindown不能脱离Activity而单独存在着,所以当某个Dialog或者某个PopupWindow正在显示的时候我们去finish()了承载该Dialog(或Popup...

使用新版Android Studio检测内存泄露和性能

内存泄露,是Android开发者最头疼的事。可能一处小小的内存泄露,都可能是毁于千里之堤的蚁穴。 怎么才能检测内存泄露呢?网上教程非常多,不过很多都是使用Eclipse检测的, 其实1.3版本以后的Android Studio 检测内存非常方便, 如果结合上MAT工具,LeakCanary插件,一切就变得so easy了。熟悉Android Studio界面工欲善其事,必先利其器。我们接下来先来熟悉下Android Studio的界面 PHPer月薪测试题【点击进入】看看自己工资拿少了吗 2...

android解析plist文件

这个东西零零碎碎写了一个礼拜吧。其实也没多少东西在里面。文章后附下载地址博客地址:http://blog.csdn.net/dawn_moon因为我没用过chipmunk,而且它是面向过程的东西,情感上又不太愿意去研究,所以我用box2d来做了物理仿真。个人感觉box2d还是蛮好用的,它的作者很牛逼的哦。暴雪娱乐的首席软件工程师,box2d是他业余写的。国外的攻城狮都这么牛逼么。我感觉我的代码组织的还算比较清楚的。复杂点的地方,我都写了一些简要的注释...

怎么将Eclipse 项目切换到Android Studio

怎么将Eclipse 项目切换到Android Studio? Google 官方已经给出了两种解决方式解决方案。 第一种 直接选择目录,next 一直到最后,我们的Eclipse 的项目就到了Android Studio 上了,需要注意的是,这样导入的项目还是会保留Eclipse 的构建方式,比如我们在Eclipse 上使用Ant 构建,迁移后还是会是会用Ant 构建。 导入Eclipse ADT 第二种 首先,我们在Eclipse 将项目导出为Gradle 项目。 选择导出 导出Gradle 项目 然后在Android S...

Android自定义(三)实现圆盘的百分比设置【图】

最近一直在学习自定义控件,昨天看到群里有人问如何如何实现圆盘样式的显示,学有所用,于是乎就有了这篇博客先上图,一目了然这里的显示颜色以及颜色块的大小你都可以自己设置这里设置了三种颜色,对应三种颜色的三个角度上代码:<?xml version="1.0" encoding="utf-8"?> <resources><declare-styleable name="CustomCircle"><attr name="firstColor" format="color"/><attr name="secondColor" format="color"/><attr name="thirdColor...

[异常解决] android stdio检测不到手机的解决办法——ADB驱动自己安装【图】

用android stdio搭建安卓开发环境比eclipse简单的多,仅仅下载一个1个G左右的安装包安装即可。安装好之后随便建一个hello world工程,想用实体手机调试要点:选择USB设备:这样点击编译运行后,在下面的提示框中就能看到log信息: 特别的:有时候手机插上电脑后驱动总是安装失败(查看设备管理器显示ADB接口有个感叹号),此时可以自己下载一个ADB驱动手动安装即可:http://pan.baidu.com/s/1bbrTAQ 原文:http://www.cnblogs.com/...

团队项目-BUG排查-ADT工程 To Android Studio 一整天的排查日记【图】

4-22 10:44至4-23 0:45①打开Eclipse从Github上Clone MathsApp到本机,报错‘Unable to resolve target‘android-19‘②尝试导入Android Studio1.5.1,直接改动 targetSdkVersion 和 compileSdkVersion 到 23(安卓6.0),首次运行成功 当时格外高兴,以为一大难关已经过去。然而…4-23 8:30 至 4-23 11:56①收到Android Studio 2.0.0的升级消息,加之看到新闻称2.0.0支持即时运行,果断关掉当前Android Studio 1.5.1,卸载干...

android:ellipsize属性 textview

TextView及其子类,当字符内容太长显示不下时可以省略号代替未显示的字符;省略号可以在显示区域的起始,中间,结束位置,或者以跑马灯的方式显示文字(textview的状态为被选中)。其实现只需在xml中对textview的ellipsize属性做相应的设置即可。 android:ellipsize="start" 省略号在开头 android:ellipsize="middle" 省略号在中间 android:ellipsize="end" 省略号在结尾 android:ellipsize="marquee...

Android通讯录管理(获取联系人、通话记录、短信消息)(三)【图】

一、什么是状态图状态图(State Diagram)用来描述一个特定对象的所有可能状态以及由于各种事件的发生而引起的状态之间的转移。状态图显示了状态机。状态图用于对系统的动态方面建模.动态方面是指系统体系结构中任一对象按事件排序的行为,这些对象可以是类、接口、构件和节点。二、状态图的图符三、状态图的基本要素1.状态机:描述一个对象或一个交互在生命期内响应事件所经历的状态序列。单个类或一组类之间写作的行为可以用状态机...

android adapter公共写法【代码】【图】

在开发过程中,会写很多的adapter类,其中很多公共的部分,不需要每次都去书写,可以为开发者省下很多时间提取一个ListViewAdapterpublicabstractclass ListViewAdapter<T> extends BaseAdapter {//为了让子类访问,于是将属性设置为protectedprotected Context mContext;protected List<T> mDatas;protected LayoutInflater mInflater;privateint layoutId; //不同的ListView的item布局肯能不同,所以要把布局单独提取出来public ...

关于安卓应用(APK文件)的二次打包【图】

http://blog.csdn.net/baiyuliang2013/article/details/40426681 很多开发者,不管是个人或是公司都不太注重自己开发的应用的安全性,即是 否会被不法分子篡改代码,插入恶意代码,发一些垃圾广告,甚至盗用用户信息。包括我在内,也并不太在意,直到前几天在市场上发布的一款应用被盗版并上传到 了某些应用市场才发现问题的严重性!期初我并不知道该市场上的应用是盗版的,还在沾沾自喜呢,并且下载了一个装在了手机里,后来...

Android百分比布局【图】

在Android中对控件布局指定尺寸时,一般有两种方式:一种设定为自适应布局,即match_parent(fill_parent)或者wrap_content,通过根据父布局大小或者自己内容来产生一个动态尺寸;另外一种通过指定一个具体数值的方式定义成固定布局,单位可以是px/dp/sp等。这在绝大数情况下是可以解决问题的。可是有没有办法像div+css里那样根据屏幕的尺寸,对控件布局进行“百分比”设定呢?这时就需要用到LinearLayout和他的子控件属性layout_we...