android
文章平均质量分 63
明月照松雪
这个作者很懒,什么都没留下…
展开
-
android studio 如何查找不同版本的包重复引用
3、点击gradle->app->Tasks->help->dependencies就可以看到app里面的包引用关系。1、首先要确保android studio->setting里面开启了build gradle task list。编译报错,原因是重复引用。但是代码全局搜索只发现一个地方引用了包。2、gradle列表里面要取消选中offline。原创 2022-12-14 10:55:43 · 683 阅读 · 1 评论 -
Android ⽂件系统 API
不会因为app删除而消失的,有特定目录这些目录都是以DIRECTORY开头的,例如:DIRECTORY_MUSIC , DIRECTORY_PICTURES。使用方法(1)使用方法(2)结果会是:sdcard/Pictures。原创 2022-12-13 10:22:40 · 366 阅读 · 0 评论 -
安卓开发中JNI,NDK,SDK,JDK的概念
SDK(oftware development kit):软件开发工具包,辅助开发某一类软件的相关文档、API必需资料、范例和工具的集合都可以叫做 "SDK"。NDK(native development kit):在android中,通过NDK使用JNI与本地代码(如c、c++)交互。JNI(java native interface):使得java与本地其他类型语言(如c、c++)交互的接口。JDK(java development kit):Java语言的软件开发工具包,即java开发使用的sdk。原创 2022-12-01 11:10:29 · 2160 阅读 · 0 评论 -
Android Studio Gradle相关
gradle是一个构建工具,理论上来说,它可以用来构建任何项目(如java项目,ios项目)。它可以与任何类型的IDE集成(如ecllipse,android studio),方便的帮我们将项目代码进行构建打包,是一个脚本工具。配置gradle version的地方在项目目录下的或者在->project menu里的gradle versionAndroid Gradle Plugin(简称AGP)是android基于gradle开发,整合了几项专门用于构建Android应用的功能。原创 2022-11-29 15:52:38 · 4747 阅读 · 0 评论 -
TabLayout使用反射更改下划线长度注意版本
api 28的Tablayout 的源码中,原来的mTabStrip和mTextView已经改名为slidingTabIndicator和textView。所以要使用反射获取texView属性改成这样写Field mTextViewField;if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { mTextViewField = tabView.getClass().getDeclaredField("textView");}原创 2021-05-11 11:19:01 · 107 阅读 · 0 评论 -
NewbieGuide setBackgroundColor为transparent无效
公司的项目要做一个引导页,同事使用了NewbieGuide,测试人员发现背景不是半透明的,像是全黑的,把问题抛给了我。看了一下代码,问题大概是ui给的引导页图片是半透明带遮罩的效果,叠加了控件本身的半透明导致看起来像是全黑的。但是代码里面同事使用了setBackgroundColor(Color.TRANSPARENT),应该是想让控件的遮罩为透明,明显不起作用。我去github里看了一下...原创 2019-07-15 16:37:45 · 1234 阅读 · 0 评论 -
动态设置高德地图中心点(坐标点),始终位于屏幕中心
项目需求是做一个类似于滴滴的车辆救援,界面是地图上面再覆盖一部分表单。订单状态不同,表单里的信息不同,那么表单的高度就不同。因为界面都使用到了map,所以尽管订单有不同的状态,但是我都在一个界面做,通过状态变化来控制表单的显示状态。但是有一个问题是,不同的订单状态因为表单高度不同,导致地图的定位坐标点可能不在可视区域的中心。特别是我使用了bottomsheet来实现抽屉式表单,地图和表单肯定是有部...原创 2019-05-15 14:55:48 · 37098 阅读 · 3 评论 -
android 隐藏输入法
试过hideSoftInputFromWindow不起作用,只有toggleSoftInput其作用,但是这个方法是:输入法隐藏的时候显示,输入法显示的时候隐藏。我的应用场景是dialogFragment关闭的时候要把输入法隐藏,如果输入法本身就是隐藏状态,那么输入法会显示出来,这样是不对的。所以要加一个判断输入法是否是显示状态(参考https://www.jianshu.com/p/2bdb40...原创 2019-05-06 10:01:00 · 2016 阅读 · 0 评论 -
启动页与登录页的动画
想要实现的效果如图所示。可以划分为两个界面,启动页和登录页,动效是做在登录界面的,这样当用户登录的时候,就不会有整个动效出现。显示的界面其实是三个:1、启动APP时会显示一个临时窗口Starting Window,所以在启动app之后会看到一个window背景,这个背景会根据theme来显示是黑屏还是白屏。所以我们要给启动页设置android:windowBackground为启...原创 2019-05-05 14:10:37 · 1438 阅读 · 0 评论 -
使用高德地图MapView
跳过导入高德地图,导入包,直接到使用一、在Activity中使用1、在布局中使用mapview<com.amap.api.maps.MapView android:id="@+id/amapView" android:layout_width="match_parent" android:layout_height="0dp" ...原创 2019-04-23 09:59:29 · 5555 阅读 · 0 评论 -
android.os.BadParcelableException: ClassNotFoundException when unmarshalling报错
低端机上intent使用bundle传递parcelable对象,一直crash,报错android.os.BadParcelableException: ClassNotFoundException when unmarshalling只要将下面的写法Bundle bundle = new Bundle(); bundle.putParcelable(BUNDLE_L...原创 2019-04-26 14:18:10 · 1141 阅读 · 0 评论 -
BottomSheet的使用
一、需求产品需要实现地图上层放一个类似抽屉效果的表单,我想到可以用BottomSheet实现。BottomSheet有三种:BottomSheets,BottomSheetDialog,BottomSheetDialogFragment。而上面三种又可以分为两种:一种是没有蒙层的,可以对没有遮盖住的地方进行操作,如BottomSheets:它依赖于Coordinato...原创 2019-04-26 10:50:30 · 4124 阅读 · 1 评论 -
智能卡夹
一、需求:主要是对接第三方sdk将服务短信转为卡片并储存,所以需求是在收到短信的时候需要将短信传给第三方api。二、流程:1、数据存储在Application里就启动Service,并初始化第三方sdk。Service里注册ContentObserver,用来监听短信数据库变化,并读取短信cursor,将字段构造成sdk所需的entity并解析,将解析出来的结果存入智能卡夹intelcar...原创 2019-03-31 20:34:01 · 190 阅读 · 0 评论 -
NotificationListenerService失效的两种情况
1、在NotificationListenerService onCreate或Onbind过程中crash。2、被第三方软件杀掉或者service被系统杀掉.原创 2017-01-04 10:54:32 · 10013 阅读 · 0 评论