
android
文章平均质量分 60
Fresh_Air_Life
专业android蓝牙开发工程师,精通蓝牙App,蓝牙协议栈,蓝牙驱动开发,主导开发过车载蓝牙电话,车载蓝牙音乐,车载carservice,someip开发。有丰富的项目开发经验。
----> 提供付费解bug服务,有需求私聊
展开
-
AppCompatActivity 实现透明效果 ---- sdk30 测试有效
<!--透明activity的style--> <style name="transparent_activity" parent="Theme.AppCompat.Light.NoActionBar"> <item name="android:windowBackground">@color/transparent_background</item> <item name="android:window...原创 2021-09-09 16:12:13 · 460 阅读 · 0 评论 -
系统编译踩坑记录
问题1.Cause: executing external native build for cmake 报错 尝试1. 通过./gradlew build --stacktrace 查看编译报错细节问题2.使用gradle进行编译打包产生 java.lang.OutOfMemoryError: GC overhead limit exceeded在gradle.properites文件中添加如下配置即可org.gradle.jvmargs=-Xmx4096m.........原创 2021-05-05 10:17:31 · 286 阅读 · 0 评论 -
Android Studio 右边的 gradle 编译选项框不显示问题记录
右边的选项框不显示, 可以点击 file --> sync project with gradle files等待同步玩资源之后, 右边框的 gradle 编译选项框就会显示了就会显示.希望能帮到遇到这个问题的小伙伴原创 2020-08-19 16:12:58 · 2719 阅读 · 0 评论 -
Android 系统中同时删除多条SMS的具体实现
昨天,遇到了一个同时删除多条记录的问题,在android系统中删除操作过慢导致了,导致用户体验不佳的现象。 该问题一直都没有很好的解决,现在将整体的解决方案记录一下。 一。AsyncQueryHander的具体实现 通过代码我们看到这里是通过一个AsyncQueryHander实现的删除操作,该handler的具体实现 public sta原创 2016-08-31 16:37:30 · 1480 阅读 · 0 评论 -
andorid 学习笔记 UniversalImageLoader的使用
UniversalImageLoader问题:从网络获取图片、显示、回收,每个环节都可能造成应用的OOM(如果没做相关的处理的话)。像ListView或者是GridView中,一页就含有大量的图片,快速滑动的时候,没有OOM也会有卡顿的现象。解决办法:使用异步加载网络图片、缓存以及显示。ImageLoader的工作原理: 最后下载好图片,原创 2016-09-30 10:36:52 · 423 阅读 · 0 评论 -
Android学习笔记 十六 使用RxBinding响应控件的异步事件
RxBinding是Rx中处理控件异步调用的方式, 也是由Square公司开发, Jake负责编写. 通过绑定组件, 异步获取事件, 并进行处理. 编码风格非常优雅. 让我来讲解一下如何使用, 本文含有代码示例.1. 依赖除了RxJava, 再添加RxBinding的依赖.// RxBinding compile 'com.jakewharton.rxbindi原创 2016-10-02 09:08:26 · 479 阅读 · 0 评论 -
Android layer type 小结
今天看源码。发现在手势识别开始前会存在LayerType 的设置 /** * The series of touch events has been detected as a swipe. * * Now that the gesture is a swipe, we will begin translating the view of the *原创 2017-02-17 11:18:27 · 3693 阅读 · 0 评论 -
android 蓝牙hfp client实现简介
首先确认配置文件是否开启hfp profile功能。根据设备的角色(hfp client / hfp server)来配置hfp profile.profile 配置文件路径:alps/packages/apps/Bluetooth/res/values/config.xmlalps/device/${customer}/${ProjectName}/overlay/packages/app...原创 2018-10-26 14:08:06 · 2841 阅读 · 1 评论 -
android 车机电话的通讯录联系人搜索实现解析 ------- 填坑日记
项目中的android 车机系统 搜索联系人算法一直有问题 , 这里就把整个的流程写一遍一 .搜索算法实现的功能1.支持中文,英文搜索2.支持电话号码搜索3.支持汉语拼音搜索, 首字母搜索也能支持, 同时对检索到的文字显示高亮前面的第一, 第二点, 都是比较简单的, 通过遍历字符串, 查看字符串是否包含用户输入的字符, 就能达到检索的功能重点是第三点,拼音的搜索,首...原创 2019-08-09 18:00:25 · 1206 阅读 · 0 评论 -
Android BLE 开发常见问题总结
本文手机了 截止2016年8月笔者开发BLE以及网络上面的一些BLE开发经验,大家共同学习,共同进步。这段时间在做低功耗蓝牙 (BLE) 应用的开发(并不涉及蓝牙协议栈)。总体感觉 Android BLE 还是不太稳定,开发起来也是各种痛苦。这里记录一些杂项和开发中遇到的问题及其解决方法,避免大家踩坑。本文说的问题有些没有得到官方文档的验证,不过也有一些论坛帖子的支持,也可以算原创 2016-08-08 15:06:58 · 3303 阅读 · 2 评论 -
Android 学习笔记十三 通过绝对路径得到uri
private static Uri queryMedia(String mediaPath, String path, Context context) { String StringUri = null; ContentResolver mContentResolver = context.getContentResolver(); if (Te原创 2016-07-12 12:06:44 · 578 阅读 · 0 评论 -
Android 学习笔记之十 Listview 优化原理
听到这,大家觉得应该是再熟悉不过了吧,当然或许很多人已经知道 ListView 的优化。我在这里就再详细的讲一遍。顺便让ListView分类显示。之前咋网上仿照别人写过一个,但是不知道原理, 今天看到了一篇写的不错,收藏了。先来看看效果:可以看到数据有100个(0-99),奇数和偶数分类显示,并给每类数据加了一个头原创 2016-05-22 09:56:11 · 1264 阅读 · 0 评论 -
Android 学习笔记之五 activity lanuch mode
launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里。这里简单介绍一下task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建一个与之对应的task。Activity一共有以下四种lau原创 2016-05-11 22:59:37 · 1376 阅读 · 0 评论 -
android 学习笔记之六 动态获取权限
众所周知,Android 6.0 相比之前的Android版本有一个很大的不同点,就是动态获取权限。今天自己在做拨号功能时,正巧遇到这个问题, 顺手记录下在Android 6.0 上如何动态获取权限。下面从自己一开始的问题入手实现拨号功能说到拨号,一个 Intent 就搞定,代码如下,12345原创 2016-05-13 10:29:20 · 1322 阅读 · 0 评论 -
Andriod 学习笔记之八 自定义view实现圆圈标记
目的实现一个自定义的view,能够在这个圆圈里面实现显示数子,数字居中显示布局文件在布局文件中添加 <com.android.mms.ui.TctUnReadIcon android:id="@+id/unread_icon" android:layout_width="18dp"原创 2016-05-15 12:53:37 · 511 阅读 · 0 评论 -
Android 学习笔记之十一 2048的实现分析
上大学时,就听挺哥说过2048是比较简单的程序,网上有一天学会的教程。 前几天,找了一下教程,实践成功了。 问题分析 做问题之前,分析必不可少,知道目的,才能有的放矢。 1.UI从界面看,2048 有一个4*4的网格型布局,里面填充有数字,然后有记录分数的文字, 这个网上主要的实现是Grid原创 2016-05-23 12:49:53 · 948 阅读 · 2 评论 -
Android 自定义控件学习之一 基础知识
基本实现 步骤 1、自定义View的属性2、在View的构造方法中获得我们自定义的属性[ 3、重写onMesure ]4、重写onDraw在最新的andriod studio 中,选择自定义空间,它会生成相应的attr 文件,布局文件,属性实现文件,通过这三个文件,我们就可以设计自己的控件。原创 2016-05-29 10:58:34 · 490 阅读 · 0 评论 -
Android 学习笔记之一 Status Bar Notifications
简介Android系统的状态栏(Status Bar)中有一个创新UI设计,这就是可以下拉的通知提示。当系统有一些消息要通知用户时,例如,收到短信、电子邮件、有未接来电时,都会把信息作为通知(Notification)发送给用户。Status Bar 增加了一个图标到系统状态栏中,还有文本信息(可以不选),增加Notification信息到Notification窗口。你还可以安装原创 2016-04-21 21:56:23 · 663 阅读 · 0 评论 -
android 学习笔记十二 监听键盘状态
监听键盘状态, 在短信的界面我们可以通过该方法监听,输入法是否弹出 conv_root 为根布局的id // get root layout id final View activityRootView = findViewById(R.id.conv_root); // add listener for rootlayou ac原创 2016-06-02 20:09:41 · 547 阅读 · 0 评论 -
android 自定义控件学习之三 控件布局常用知识总结
1、View是什么View是Android所有控件的基类,简单到TextView、Button,复杂到RelativeLayout,LinearLayout,其共同基类都是View。所以,View可以理解为控件的抽象,也是一个控件。除此之外,还有ViewGroup,字面意义上,它表示控件组,内部可以包含许多个控件。ViewGroup也继承自View,这意原创 2016-06-02 20:12:31 · 3416 阅读 · 0 评论 -
Android 学习笔记之三 BLE
1、关键术语和概念1.1 下面是一些BLE关键术语和概念的摘要:* Generic Attribute Profile(GATT):GATT profile是一种关于发送和接收简短数据片段的一般规范,这种简短数据片段例如在BLE的连接上众所周知的“attribute(属性)”等。当前所有低功耗应用程序的profile都基于GATT。另外,蓝牙技术联盟(Bluet原创 2016-04-26 20:52:59 · 2516 阅读 · 0 评论