1. Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

解决:

在工程的gradle.properties文件中添加以下命令:

  1. android.enableAapt2=false

2. java.net.ProtocolException: Unexpected status line: <html>

原因:

在网络请求的 url 地址上所带参数 password 通过 Base64.DEFAULT 加密后,带有 \n 换行符,即参数的问题导致该问题。

解决:

通过 Base64.NOWRAP 去掉换行后,错误解决。

3. java.lang.IllegalStateException:Not allowed to start service Intent : app is in background uid UidRecord

Android 8.0 不再允许后台service直接通过startService方式去启动,我们需要 context.startService()替换为context.startForegroundService();

  1. Intent i = new Intent(context, MediaPlaybackService.class);
  2. context.startForegroundService(i, CURRENT);

MediaPlaybackService onCreate()方法 设置为前台进程:

  1. public void onCreate() {
  2. super.onCreate();
  3.   NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
  4.     // notification id
  5.     final String channelId = MusicBrowserActivity.MUSIC_NOTIFICATION_CHANNEL;
  6.     // create notification channel
  7.    NotificationChannel mChannel = new NotificationChannel(channelId, "MUSIC", NotificationManager.IMPORTANCE_LOW);
  8.    mNotificationManager.createNotificationChannel(mChannel);
  9.     // set channel id
  10.     Notification status = new Notification.Builder(MediaPlaybackService.this).setChannelId(channelId).build();
  11.     // start for foreground process
  12.     startForeground(PLAYBACKSERVICE_STATUS, status);
  13. }

4. Faild to post notification on channel "null"

NotificationChannel 是 android8.0 新增的特性,如果App的 targetSDKVersion >= 26,没有设置 channel 通知渠道的话,就会导致通知无法展示。

解决: 创建 Channel

  1. String channelID = "1";
    String channelName = "channel_name";
  2. NotificationChannel channel = new NotificationChannel(channelID, channelName, NotificationManager.IMPORTANCE_HIGH);
  3. NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
  4. manager.createNotificationChannel(channel);
  5. Notification.Builder builder = new Notification.Builder(context);
  6. builder.setContentText(msgDesc);
    builder.setContentTitle(msgTitle);
  7. //创建通知时指定channelID
  8. builder.setChannelId(channelID);
  9. Notification notification = builder.build();

上面代码是针对android8.0,我们还要兼容低版本系统以及channel属性设置。

5. found an invalid color.         java.util.concurrentException:com.android.builder.interal.aapt.v2.Aapt2Exception: AAPT2 error

出现这个问题的原因是项目中引入了一个 .9 图片引起的,需要更改一下.9图片的四边的黑线(拉长或者缩短都可以)。

6. No signature of method: static org.gradle.api.java.archives.Manifest.srcFile() is applicable for argument types: (java.lang.String) values ...

7. Kotlin compiler:

  Unresolved reference: BaseApplication

   'onCreate' overrides nothing

场景: 在 common 组件里放置 BaseApplication 或者 BaseActivity ,在其他 module 中继承出现这个问题。原因是 common 组件未配置 kotlin

解决: 在 common 的 build.gradle 最上方添加:

  1. apply plugin: 'kotlin-android'
  2. apply plugin: 'kotlin-android-extensions'

8. javax.crypto.BadPaddingException: error:1e000065:Cipher functions:OPENSSL_internal:BAD_DECRYPT

  导致这个问题的原因就是 密钥不对 ,要严格按照密钥的生成规则

9. Error: Program type already present:  ****** .BuildConfig

   Android studio Throwing the wrong way is because 2 module have the same package name in AndroidManifest.xml, and can modify different names. 这个问题是出现在 Android 4.x ,在Android 5.x以上就没有问题了。根本原因未探索

解决: 将相同包名中的其中一个改成其他报名

10. java.lang.IllegalArgumentException: Unknown pattern character 'X'

  "yyyy-MM-dd'T'HH:mm:ss.SSSXXX" 使用该格式转化时间格式,出现问题 。测试:Android6.0 以及 Android4.4上均出现问题。  原因:X is available only from Nougat+.

苟且解决方案: 将 "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"  改为 "yyyy-MM-dd'T'HH:mm:ss.SSS"

. io.reactivex.exceptions.UndeliverableException: The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the exception has nowhere to go to begin with.

解决:

  1. //RxJava2 取消订阅后,抛出的异常无法捕获,导致程序崩溃
  2. RxJavaPlugins.setErrorHandler {
  3. LogUtil.e(it.message ?: "RxJavaError")
  4. }

Android 错误集合的更多相关文章

  1. Android --资料集合

    google android 官方教程 http://hukai.me/android-training-course-in-chinese/basics/index.html android视频资料 ...

  2. Gradle DSL method found: ‘android()’错误

    Gradle DSL method found: ‘android()’错误 和上个错误一样这个也是因为在新版本的Gradle中android()方法已经废弃,但是要注意android()只是在整个项 ...

  3. Android icons集合

    Android icons集合: Be aware that the style changes occur fairly regularly with each major release, so ...

  4. Android - 错误:&quot;No resource found that matches the given name android:Theme.Material&quot;

    Android - 错误:"No resource found that matches the given name android:Theme.Material" 本文地址:  ...

  5. springboot整合mybatis步骤以及错误集合

    1.首先在springboot项目中的pomx文件引入官方的依赖 <groupId>org.mybatis.spring.boot</groupId> <artifact ...

  6. 【Android应用开发】Android Studio 错误集锦 -- 将所有的 AS 错误集合到本文

    . 一. 编译错误 1. "AndroidManifest.xml file not found" 错误 (1) 报错信息 报错信息 : -- Message Make : Inf ...

  7. ionic build Android错误记录未解决

    1.try itcordova -v cordova create testing cd testing cordova plugin add cordova-plugin-sim cordova p ...

  8. Android错误

    1. [2016-09-16 14:25:45 - X_Card] Found 2 versions of android-support-v4.jar in the dependency list, ...

  9. Android错误:W/ResourceType(2411): No package identifier when getting value for resource number 0x

    报错信息: 07-04 11:14:43.064: W/ResourceType(2411): No package identifier when getting value for resourc ...

随机推荐

  1. 【web前端】移动端控制台插件,手机端页面查看相关页面控制台信息

    一般调试手机端页面时,基本是在PC端使用手机模式进行断点或console调试.或查看有用的控制台信息的,但依旧有部分功能无法在PC端调试,经常需要使用alert进行断点,然后在手机端看效果,但是这样并 ...

  2. 原生态JDBC

    原生态JDBC JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API.JDBC是java访问数据库的标准规范,可以为不同的关系 ...

  3. windows模糊查询指定进程是否存在

    习惯的查询 wmic process | findStr /i "**" /i 忽略大小写 我查考的链接 常用批处理命令总结3之Find和FindStr

  4. 变参标准函数的重新封装,如printf

    方法一: #include <stdio.h> #include <stdarg.h> void my_trace(const char *cmd, ...) { printf ...

  5. cJSON库的简单介绍及使用

    转载:http://www.cnblogs.com/liunianshiwei/p/6087596.html JSON 语法是 JavaScript 对象表示法语法的子集.数据在键/值对中:数据由逗号 ...

  6. QML手动连接信号槽【Connections】

    1.使用Connections import QtQuick 2.6 import QtQuick.Window 2.2 import QtQuick.Controls 1.4 Window { vi ...

  7. topcoder srm 706 div1

    1.给定一个迷宫,点号表示不可行,井号表示可行.现在可以改变其中的一些井号的位置.问最少改变多少个井号可以使得从左上角到右下角存在路径. 思路:设高为$n$,宽为$m$,若井号的个数$S$小于$n+m ...

  8. Restful framework【第一篇】RESTful 规范

    什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” REST从资源的角度类审 ...

  9. main.dart

    import 'package:flutter/material.dart'; import 'package:flysnow_2ull/index/index.dart'; // 导入index.d ...

  10. POP-OOP-SOP-COP-SOA-AOP

    一.面向过程 二.面向对象 三.面向服务 四.补充 五.总结: 英文及缩写: 面向过程:procedure oriented programming POP 面向对象:object oriented ...