实现常驻通知栏时遇到的问题:

无论如何就是不显示通知,查看日志发现貌似报错了:

2020-06-28 14:11:34.923 6387-6387/xxx E/CrashReport: android.app.RemoteServiceException: Bad notification posted from package xxx: Couldn't inflate contentViewsandroid.view.InflateException: Binary XML file line #2: Binary XML file line #2: Error inflating class android.support.constraint.ConstraintLayout

at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1944)

at android.os.Handler.dispatchMessage(Handler.java:106)

at android.os.Looper.loop(Looper.java:192)

at android.app.ActivityThread.main(ActivityThread.java:6815)

at java.lang.reflect.Method.invoke(Native Method)

at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)

at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:818)

说的是布局报错,所使用的布局如下:

根据报错信息来看,就是这个

android.support.constraint.ConstraintLayout

的问题了。

然后将布局的根view修改为RelativeLayout。

运行,报错,,,,纳尼?

2020-06-28 14:24:02.622 11436-11436/xxx E/CrashReport: android.app.RemoteServiceException: Bad notification posted from package xxx: Couldn't inflate contentViewsandroid.view.InflateException: Binary XML file line #2: Binary XML file line #2: You must supply a layout_height attribute.

at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1944)

at android.os.Handler.dispatchMessage(Handler.java:106)

at android.os.Looper.loop(Looper.java:192)

at android.app.ActivityThread.main(ActivityThread.java:6815)

at java.lang.reflect.Method.invoke(Native Method)

at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)

at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:818)

虽然继续报错,但是发现跟第一次报的错不同了,说明第一个报错问题解决。

那么来细看第二个报错信息:

Binary XML file line #2: You must supply a layout_height attribute.

看信息是说布局中缺少layout_height属性,但是确认布局中设置了这属性啊。。。

xmlns:app="http://schemas.android.com/apk/res-auto"

android:layout_width="match_parent"

android:layout_height="@dimen/dp_74"

android:background="@drawable/shape_bg_resident_notify">

android:id="@+id/iv_resident_weather"

android:layout_width="@dimen/dp_45"

android:layout_height="@dimen/dp_45"

android:layout_marginStart="@dimen/dp_10"

android:background="@mipmap/weather_icon_blue_big_cloudy"

android:layout_centerVertical="true"/>

android:id="@+id/tv_resident_weather_temp"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="28"

android:textSize="@dimen/sp_40"

android:textColor="#ff333333"

android:layout_toEndOf="@+id/iv_resident_weather"

android:layout_centerVertical="true"

android:layout_marginStart="@dimen/dp_5"/>

android:id="@+id/tv_resident_degree"

android:layout_width="@dimen/dp_6"

android:layout_height="@dimen/dp_6"

android:layout_marginStart="@dimen/dp_3"

android:layout_marginTop="@dimen/dp_24"

android:layout_toEndOf="@+id/tv_resident_weather_temp"

android:background="@drawable/shape_resident_weather_temp"/>

android:id="@+id/tv_resident_weather_cond"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="多云转晴"

android:textSize="@dimen/sp_16"

android:textColor="@color/color_333333"

android:layout_marginTop="@dimen/dp_14"

android:layout_marginStart="@dimen/dp_6"

android:layout_toEndOf="@+id/tv_resident_degree" />

android:id="@+id/tv_resident_temp_range"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="21~34℃"

android:textColor="@color/color_333333"

android:textSize="@dimen/sp_16"

android:layout_marginTop="@dimen/dp_5"

android:layout_below="@+id/tv_resident_weather_cond"

android:layout_toEndOf="@+id/tv_resident_degree"

android:layout_marginStart="@dimen/dp_6"/>

android:id="@+id/tv_resident_aqi"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="空气优"

android:textSize="@dimen/sp_16"

android:textColor="@color/color_333333"

android:layout_alignParentEnd="true"

android:layout_marginTop="14dp"

android:layout_marginEnd="@dimen/dp_10"/>

android:id="@+id/iv_resident_aqi"

android:layout_width="@dimen/dp_18"

android:layout_height="@dimen/dp_18"

android:src="@drawable/ic_icon_aqi"

android:layout_toStartOf="@+id/tv_resident_aqi"

android:layout_marginEnd="@dimen/dp_5"

android:layout_marginTop="@dimen/dp_16"/>

android:id="@+id/tv_resident_desc"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="浦东新区 14:33发布"

android:textSize="@dimen/sp_12"

android:textColor="@color/color_999999"

android:layout_marginEnd="@dimen/dp_10"

android:layout_alignParentEnd="true"

android:layout_below="@+id/tv_resident_aqi"

android:layout_marginTop="@dimen/dp_11"/>

莫名奇妙啊简直

然后仔细想想可能的原因:难不成是因为分辨率适配的问题?

就是没有匹配到合适的分辨率的尺寸。那就试一下,把布局中所有引用@dimen的地方直接改为使用尺寸。

运行,成功!!!

问题:发现有个布局上的问题

自定义通知栏设置了背景,宽度是match_parent,但是发现在某些手机上,如小米6(截图所示),可以看到宽度竟然没有充满全屏。

但是在华为, vivo等手机上正常。

那就把这个背景去掉,自适应好了。

总结

到此这篇关于android实现常驻通知栏遇到的问题及解决办法的文章就介绍到这了,更多相关android 常驻通知栏内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

android service常驻通知栏,android实现常驻通知栏遇到的问题及解决办法相关推荐

  1. android service是什么,Android service是什么 Android service详解

    Android service是什么 Android service详解 时间:2017-04-06     来源:Android开发学习网 什么是Android Service? service是A ...

  2. android+点击屏幕隐藏键盘,Android点击EditText文本框之外任何地方隐藏键盘的解决办法...

    1,实现方法一: 通过给当前界面布局文件的父layout设置点击事件(相当于给整个Activity设置点击事件),在事件里进行键盘隐藏 android:id="@+id/traceroute ...

  3. Android Studio之debug调试卡在waiting for debugger界面的解决办法

    1.问题 Android Studio debug调试项目卡在waiting for debugger界面 2.解决办法 一开始从启adb服务 adb stop-server adb start-se ...

  4. android studio 新建工程慢,关于AndroidStudio新建与编译项目速度慢解决办法

    android第一次新建项目是,相关依赖包需要下载很久,至少半小时,因为网速问题,还会多次下载失败. 解决办法如下: 1.通过镜像将gradle-5.4.1-all.zip下载到本地:解压到文件夹:D ...

  5. android启动画面白屏,Android app启动时黑屏或者白屏的原因及解决办法

    1.产生原因 其实显示黑屏或者白屏实属正常,这是因为还没加载到布局文件,就已经显示了window窗口背景,黑屏白屏就是window窗口背景. 示例: 2.解决办法 通过设置设置Style (1)设置背 ...

  6. Job for network.service failed because the control process exited with error code. 的解决办法

    问题描述: 在使用 Ubuntu-16.04.5 系统,由于设置了静态 IP 地址,在重启网卡服务器时,可能会出现 " Job for network.service failed beca ...

  7. android service单独进程,Android 通过Service单独进程模仿离线推送 Server Push

    概述: 首先简单阐述一下我对于消息推送的理解,这里拿QQ来举例吧,当我们手机端的QQ离线了,并且退出了QQ应用,但是这时候如果别人给我们发了信息,我们没有上线.服务器会将发送者发送的信息推送过来然后我 ...

  8. android service 休眠,保持Android Service在手机休眠后继续运行的方法

    最近项目中用到了service进行计时,在连接USB的情况下一切正常,但是拔掉USB后发现,手机进入休眠后service停止了工作.最后通过 PowerManager.WakeLock 在屏幕休眠后保 ...

  9. android service前台服务器,Android网络前台向服务端页面请求数据

    这是一个android前台向服务端网站请求少量数据的小例子. 首先设计好服务端,再来写安卓前端. 一:服务端 新建动态网站,在java包下新建一个类继承HttpServlet父类,重写doGet()方 ...

  10. android service拦截按键,android里面屏蔽home键/禁止Home键或者随你DIY

    可以先禁止Home键,再在onKeyDown里处理按键值,点然后在击Home键的时候就把程序关闭,或者随你DIY. 复制代码 代码如下: @Override public boolean onKeyD ...

最新文章

  1. 薪酬管理的特点和注意事项[转]
  2. 机器人动力学(Basic Newton-Euler Mechanics)
  3. SpringBoot学习:读取yml和properties文件的内容
  4. I.MX6 mkuserimg.sh hacking
  5. 我是一个硬盘(开始以为是一个笑话,看到最后会发 ...
  6. hive中创建表失败
  7. 基于微信小程序的二手交易平台源码
  8. vb6引用vbRichClient5 下载对象 cDownloads 简单示例
  9. HWIDGen 激活出错 解决:输入错误: 没有文件扩展“.vbs”的脚本引擎
  10. 橙光游戏软件 怎么整体测试,橙光游戏怎么让编辑来审核?
  11. html表格自动分列,CSS3 Columns分列式布局方法简介
  12. 最简单Unity 连招入门--只有20行代码
  13. 【hello C++】初识C++(下)
  14. 微擎系统换服务器,微擎服务器迁移
  15. spring的 init-method和 destory-method方法
  16. 微信小程序-提交表单成功弹窗提示
  17. 黑马程序员_困兽之斗
  18. 北大青鸟的班主任好当吗_【北大青鸟班主任就业前景怎么样|做北大青鸟班主任有前途吗】-看准网...
  19. 字符串分割(比如按逗号,分号)
  20. 从RGB色转为灰度色算法

热门文章

  1. 跟益达学Solr5之使用Tomcat部署Solr
  2. UVA 11178-Morley's Theorem(计算几何_莫雷定理)
  3. 前端每日实战:97# 视频演示如何用纯 CSS 创作一组昂首阔步的圆点
  4. P35页作业 信管1181霍煜成
  5. Ripple Labs和R3联盟在XRP代币诉讼中达成和解
  6. 计算机与人类关系的英语作文,计算机的英语作文
  7. 中机云告诉你,云计算有这10大好处|中机智库
  8. java中applet是什么意思_Java Applet与Java Application的区别
  9. PyG (PyTorch Geometric) 异质图神经网络HGNN
  10. 计算机网络学习笔记<一>|工作必备|银行科技岗面试|内附八股面经|秋招提前批冲冲冲