【Android】那些年踩过的坑
Google_acmer
这个作者很懒,什么都没留下…
展开
-
Android 应用程序窗体显示状态操作(requestWindowFeature()的应用)
我们在开发程序是经常会需要软件全屏显示、自定义标题(使用按钮等控件)和其他的需求,这是我在网上百度后总结的如何控制Android应用程序的窗体显示.即requestWindowFeature()的用法。 requestWindowFeature(featrueId),它的功能是启用窗体的扩展特性。参数是Window类中定义的常量。一、枚举常量1.DEFAULT_FEATURES:系统默认状态,一原创 2014-02-17 16:59:03 · 829 阅读 · 0 评论 -
FATAL: UNABLE TO CREATE ‘…GIT/INDEX.LOCK’ FILE EXISTS
问题描述使用AndroidStudio的git工具时,有时候add的时候会提示“UNABLE TO CREATE ‘…GIT/INDEX.LOCK’ FILE EXISTS”错误。解决方案方案一:rm -f ./.git/index.lock方案二:rm .git/index.lock原创 2017-02-13 11:56:56 · 1596 阅读 · 0 评论 -
如何在自己程序跳转至微信,新浪,腾讯微博,QQ空间等
启动应用代码!Intent intent = new Intent();ComponentName cmp = new ComponentName("com.tencent.mm","com.tencent.mm.ui.LauncherUI");intent.setAction(Intent.ACTION_MAIN);intent.addCategory(Intent.CATEGORY_LAU原创 2015-03-23 21:24:33 · 1467 阅读 · 0 评论 -
startActivityForResult 用在于多个Activity之间传值时一些需要注意的用法
1:如何利用startActivityForResult()传值2:requestCode 请求码作用3:resultCode 结果码作用4:关于调用startActivityForResult后onActivityResult立刻响应,而返回当前页时onActivityResult不响应的问题的原创 2015-04-22 23:56:35 · 3557 阅读 · 0 评论 -
Android 听筒扬声器切换(多机型兼容、兼容5.0以上)
目录目录亲测有效机型案例有限仅供参考代码用法DemoFeature本以为是个很简单的切换,没想到搞了快一天。网络上各种答案,各种坑,浪费了大量的时间。亲测有效机型(案例有限、仅供参考)三星系:SM-A9000、SM-S5 魅族系:魅蓝E(yun os)、魅蓝note5 小米系:红米1s、小米note Vivo系:忘了什么型号了代码/** * ==================原创 2017-01-06 18:28:22 · 11290 阅读 · 1 评论 -
Bitmap优化问题
**在Android项目中,如果直接使用ImageView显示Bitmap会占用较多的资源,如果图片过大,会造成程序崩溃。为了解决这个问题需要对Bitmap进行压缩,以节省内存。因为项目中用到,所以写下来,以备不时之需。我们可以使用BitmapFactory的options设置图片压缩比,具体代码如下:**/** * @param absolutePath 图片文件路径 *原创 2016-03-07 19:54:52 · 542 阅读 · 0 评论 -
自定义Notification及几个坑介绍
**背景** 最近做了下推送,涉及到Notification,看到一篇不错的文章感觉好多坑都介绍到了,于是先转载并补充一下,下一篇再介绍推送。相关链接: 原文链接 原文Demo下载**实现**RemoteViews 自定义View这是最基础的知识点,虽然做过自定义通知的应该都清楚,但我觉得还是有必要带一下。它主要被用于AppWidget和Notification,它描述一个在其它进程中显示的转载 2016-08-15 17:49:33 · 6313 阅读 · 0 评论 -
如何处理解析Json中的key为中文或数字等变态数据
这篇文章是介绍如何处理Json中一些key为中文或数字开头的奇葩数据,使用的工具是Google提供的Gson工具,采用的方法是编写Java bean类对应json数据中相应的对象及数组等。默认各位已掌握这些知识,关于gson的基本使用请自行百度。Json变态数据案例{ "名称1": "这是个案例而已", "这是个demo": { "1e-3": 65.3,原创 2017-01-12 15:09:34 · 14094 阅读 · 8 评论 -
听云SDK影响其他项目报Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/networkbench/agent
问题描述最近集成了听云SDK,装了它的探针,完美运行。后来再运行我的另一个之前完美运行的项目时,傻眼了。闪退!闪退!闪退!一看Log, Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/networkbench/agent等等。顿时无语,后来发现原来是Android Studio缓存导致的问题。原因因为And原创 2017-02-07 17:57:57 · 12325 阅读 · 8 评论 -
兼容Android N 调用相册和相机获取图片及Crash- FileUriExposedException解决方案
原因Android N 文件系统权限发生了变化 ,为了提高私有文件的安全性,在targetSdk版本为N或者以后版本的app中,其私有目录将会限制访问。这可以防止私有文件元数据的泄露,比如文件大小或者是文件是否存在。但这给开发者带来了很多不利的影响:文件的owner不能放宽文件权限,如果你使用MODE_WORLD_READABLE或者 MODE_WORLD_WRITEABLE操作文件,将会触发Sec原创 2017-02-07 14:32:01 · 1838 阅读 · 0 评论 -
【Android 声音处理】MediaPlayer和SoundPool
1、new SoundPool(4, AudioManager.STREAM_MUSIC, 100);第一个参数是允许有多少个声音流同时播放,第2个参数是声音类型,第三个参数是声音的品质。2、使用MediaPlayer来播放音频文件存在一些不足:如:资源占用量较高、延迟时间较长、不支持多个音频同时播放等。这些缺点决定了MediaPlayer在某些场合的使用情况不会很理想,例转载 2014-11-21 15:49:22 · 1271 阅读 · 0 评论 -
判断Activity是否在运行、应用是否在前台、是否安装
**前言: 仅为总结,以备不时之需。** **一、判断Activity是否在运行** 注意:am.getRunningTasks(1)可以获得当前运行的task数量,设置为1则可以判断当前Activity是否正在前台运行,如果设置task数量很大时可以判断Activity是否已经已经finish /** * 判断某个界面是否在前台 * * @param c原创 2016-08-15 16:57:03 · 1785 阅读 · 0 评论 -
TextView内容过长加省略号
TextView中有个内容过长加省略号的属性,即ellipsize,之前一直用方法三实现,后来无意发现一个简便的方法,记录下来。方法一:XML代码android:ellipsize = “end” 省略号在结尾 android:ellipsize = “start” 省略号在开头 android:ellipsize = “middle” 省略号在中间 android:elli原创 2016-04-03 13:01:53 · 665 阅读 · 1 评论 -
android studio环境配置以及出现NO jvm installation found解决方案。
因为目前许多开源项目都是用Android studio写的,似乎eclipse已经过时。为了成为一名IT精英,我们当然也要紧跟时代潮流了。下面是android Stdio中文社区,文件下载,一些基本教程也是非常实用,推荐给大家:http://www.android-studio.org/这是安装教程:http://www.android-studio.org/index.php/docs/原创 2015-01-08 23:13:40 · 25417 阅读 · 0 评论 -
service如何弹出dialog
我们都知道service是没有界面的,默默的在后台执行逻辑代码,有时候需要和前台有所交互,如:toast或弹出提示框等等在service中弹出toast很简单,只要使用handler就可搞定,代码如下123456hanlder.post(new Runnable() { @Override public void run() {转载 2014-11-21 23:51:25 · 935 阅读 · 0 评论 -
Android在thread中Toast不能显示问题解决
Android在thread中Toast不能显示问题解决方案原创 2014-11-22 23:09:27 · 1969 阅读 · 0 评论 -
当EditText输入为空时,getText().toString()返回值
最近做个小软件,遇到了这个问题,试验了好多次才搞定。记录一下: 正确方法:if(edit.getText().toString().equals("")) ------------->此时为没有输入内容的情况原因:在java里面String是不能用==或!=比较的,要用equals(),原创 2014-03-16 12:18:22 · 4670 阅读 · 0 评论 -
详细谈谈intent的startActivityForResult()方法
1、两种实现activity跳转的方法 实现activity的跳转主要有两种方法,startActivity()和startActivityForResult();例如activity A跳转到activity B 对于,第一种,是把activity A的数据,通过intent传送到activity B,但是不能返回数据。转载 2014-02-18 14:49:00 · 2273 阅读 · 0 评论 -
Android ANR 错误LOG查看
问题描述当我们遇到ANR的时候如何查看错误日志?解决方案adb shell "cat /data/anr/traces.txt" | less原创 2017-02-13 12:04:19 · 2175 阅读 · 0 评论