【Android应用层】
键盘上的钢琴师_v5
厚积而薄发,谋定而后动
展开
-
AbstractMethodError: abstract method "void android.telephony.TelephonyManager$CellInfoCallback.on...
一、Error现象:应用开启混淆后,APP在Android 10及以上机型上的部分页面会闪退。二、Error日志摘要:java.lang.AbstractMethodError: abstract method "void android.telephony.TelephonyManager$CellInfoCallback.onCellInfo(java.util.List)"...原创 2020-01-10 10:50:18 · 7892 阅读 · 10 评论 -
Duplicate zip entry [114.jar:org/intellij/lang/annotations/Flow.class])
问题日志:(概要):***App:transformClassesWithMultidexlistForChannel_test FAILEDFAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':***App:transformClassesWithMultidex...原创 2019-11-12 20:39:18 · 752 阅读 · 1 评论 -
移动应用架构设计之MVC、MVP、MVVM模式应用
一、架构设计目的通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合 提高开发效率,便于测试及问题定位 提高可维护性、可扩展性二、三层架构模型一般而言,软件的开发可分为三层架构:界面层(User Interface layer, UIL)、数据访问层(Data access layer, DAL)、业务逻辑层(Business Logic Layer, BLL)。界面层:...原创 2018-08-04 15:13:06 · 1378 阅读 · 0 评论 -
Android使用ZBar扫描二维码/条形码(实例)+常见问题汇总
写在前面:因项目需求,需要实现二维码扫码功能,笔者测试过多种开源扫码工具,但因不跨平台、扫描速度慢等问题逐个放弃,最后选用ZBar实现功能,笔者发现ZBar扫码在跨主流手机平台、扫码速度等方面有较明显的优势,现将核心功能整理成示例代码,便于日后复用和有需要的读者参考。========================2017.06.19 重要更新=========================...原创 2016-05-11 15:02:13 · 17237 阅读 · 24 评论 -
Android studio: Failed to create MD5 hash for file...异常解决
问题:Android项目开发过程中,出现如下问题,Error:Execution failed for task ':app:compileDebugJavaWithJavac'.> Failed to create MD5 hash for file……重现:步骤一、导入相关jar,提示和第三方依赖项目中的jar重复Error:Execution fail原创 2017-06-28 16:57:19 · 12477 阅读 · 0 评论 -
Android volley网络框架源码和架构分析
前言:开发android应用很多时候都要涉及网络操作,Android SDK中提供了HttpClient 和 HttpUrlConnection两种方式用来处理网络操作,但当应用比较复杂的时候需要我们编写大量的代码处理很多东西:图像缓存,请求的调度等等;而Volley框架就是为解决这些而生的,它与2013年Google I/O大会上被提出:使得Android应用网络操作更方便更快捷;抽象了底层转载 2017-02-12 15:17:46 · 531 阅读 · 0 评论 -
Android平台下APP唤醒机制
一、目标 在Android平台下的一个APP中,打开(唤醒)另一个APP。二、前提1.主动唤醒方的APP与被唤醒方的APP之间有唯一的标识作为唤醒的通信信号。2.主动唤醒方的APP的开发者需要准确知晓该标识,并采用代码实现唤醒通信机制。三、技术方案 以APPA唤醒APP B为例,以下方案的每个步骤都需要所参与的APP的开发者编码实现。原创 2016-11-11 16:31:50 · 7874 阅读 · 1 评论 -
Android 软件开发规范说明
应公司需要,特整理了一套Android软件开发的规范,仅供参考。1、引言1.1 目的本文档编写的目的是为了便于Android项目团队各成员间的协同开发,提高项目代码的质量,增强代码的可读性和可维护性。本文档的预期读者为:Android开发人员、维护人员等。1.2 背景一个软件的生命周期中,少部分时间用于开发,大部分时间用于维护,就开发阶段而言,项目团队的协同开发原创 2015-11-27 18:29:50 · 1265 阅读 · 0 评论 -
Android 百度地图可以定位,但无法显示地图 的解决办法
问题描述:有些应用开发人员可能会遇到这样的问题,明明之前项目中已经集成好了百度地图的插件,但是在后续的开发过程中,发现能获取定位信息,而无法显示地图图层。前提:已经正确集成过百度插件,即原本可以显示地图,后续开发时,能获取定位信息,但不显示地图图层。图示:(只显示网格,但此时可以Log出定位信息)原因:应用签名发生改变,导致百度地图开方平台中相应应用的安全码校验错误,无法显示地图。原创 2015-10-22 16:23:52 · 23497 阅读 · 2 评论 -
Android的Touch事件处理和手势
Touch事件处理 1、是Android中两种原始事件之一 2、Touch事件的处理方式有两种 1)为事件源添加 onTouchListener监听器 2)重写事件源的 onTouchEvent方法 3、Touch事件处理时,监听器拥有较高的优先级 4、事件处理方法返回值 true:消费此事件,并消费此事件的后续关联事件 false:不消费事件,对此原创 2016-04-10 22:41:00 · 559 阅读 · 0 评论 -
Android启动模式总结
Android启动模式共四种,分别如下: 1、standard 1)每个Activity如果未明确设置 则其默认的启动模式为standard 2)设置为标准模式的Activity,每次调用startActivity方法启动时都会创建该Activity的新实例 3)设置为标准模式的Activity,在创建时默认总是在当前任务中启动,除非是从桌面程序或launch程序中启动的原创 2016-04-10 22:32:35 · 527 阅读 · 0 评论 -
Android进程优先级
Android按照进程优先级一共分以下五类:1、前台进程 1)进程中包含处于交互状态的Activity实例 2)进程中包含正在执行生命周期方法的组件实例 3)进程中包含于交互状态的Activity实例绑定的Service实例 4)进程中包含执行了setForground(true)方法的Service实例2、可见进程 1)进程中包含处于可见状态的Activity实例原创 2016-04-10 22:28:51 · 352 阅读 · 0 评论 -
Android线程相关_Handler_Message_AsyncTask
ANR============================ * Application Not Responding * 触碰屏幕5秒无响应时弹出 * 屏幕刷新与事件监听器代码,在同一个线程(Main线程)中执行 * 避免 ANR ------------------------ * 启动新的线程执行耗时操作,使主线程可以及时响应用户Andr原创 2016-04-10 22:19:30 · 435 阅读 · 0 评论 -
Android的内外存储、SharedPreferences(偏好设置)及获取空间使用情况
一、Android的外部存储 首先明确,不管安卓手机是否有可移动的sdcard,他们总是有外部存储和内部存储。最关键的是,我们都是通过相同的api来访问可移动的sdcard或者手机自带的存储(外部存储)。外部存储虽然概念上有点复杂,但也很好区分,你把手机连接电脑,能被电脑识别的部分就一定是外部存储。外部存储中的文件是可以被用户或者其他应用程序修改的,有两种类型的文件(原创 2016-04-10 22:06:13 · 2669 阅读 · 0 评论 -
android.view.InflateException: Binary XML file line #10: Error inflating class fragment
问题:在一个Activity中嵌套了两个fragment,运行时报错:java.lang.RuntimeException: Unable to start activity ComponentInfo{类名}: android.view.InflateException: Binary XML file line #10: Error inflating class fragmentCa原创 2015-11-30 13:55:35 · 1624 阅读 · 0 评论 -
android html唤醒APP(原生)
写在前面:有个需求,在微信的公众号上,通过打开网页,唤醒已经安装在手机上的APP,事实上,直接在微信上打开不可行,因为微信对这类唤醒有屏蔽,原因见后文。但是可以通过右上角的在浏览器中打开进入网页,再唤醒APP。首先做成HTML的页面,页面内容格式如下:a href="[scheme]://[host]/[path]?[query]">启动应用程序a> 例如,我的原创 2015-11-24 13:12:58 · 16086 阅读 · 0 评论 -
海康摄像头视频调用出错,Jni Error(app bug): accessed stale local reference解决办法
项目中要在Android手机中调用海康摄像头拍摄的画面,在公司网管配置好了网络地址(不要与其他局域网内地址冲突)和端口,并激活摄像头设备后,通过SADPTool(海康提供的摄像头搜索工具)可以自动检索到当前局域网内已激活的设备,通过设备列表中双击设备所在IP(即网管之前配置的IP),输入默认的用户名和密码(admin、111)进入设备管理界面,即可在PC端(浏览器中)看到摄像头拍摄的画面。至此,准...原创 2015-11-10 18:40:15 · 5877 阅读 · 9 评论 -
Android 更新版本 应用程序未安装 解决办法
问题描述在做Android应用版本更新时遇到一个问题,在原始的版本中进行升级,下载了新版的app后安装时,手机报“应用未安装”,升级失败。 如下图所示: 分析原因主要有两个方面的原因:软件的签名不一致。比如APP的新版本和旧版本分别在不同的电脑上开发的(如果开发者不给APK签名,Eclipse会使用Eclipse本身默认的签名,每台电脑上安装的Eclipse的默认签名都不一样),安装新版本时因原创 2015-09-13 11:54:11 · 13794 阅读 · 1 评论 -
BaseAnimation是基于开源的APP,致力于收集各种动画效果(最新版本1.3)
声明:部分动画来源于网络,本人只是想方便收集在一起,如果不妥请及时与我联系!谢谢为了统一BaseAnimationApp签名,一定要方便以后大家自动更新...防止签名冲突,不能及时更新BaseAnimation讨论群号:149581646github下载地址:https://github.com/z56402344/BaseAnimation1.3源码下转载 2015-04-30 13:22:34 · 640 阅读 · 0 评论