• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > android 8.0 应用启动崩溃?

android 8.0 应用启动崩溃?

作者:和小胖 字体:[增加 减小] 来源:互联网 时间:2017-11-18

和小胖通过本文主要向大家介绍了windowDisablePreview,opaque,android8.0等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

          android8.0正式版已经出了几个月了,当然国内手机如果要升级到8.0可能还需要些时日。但是我们有模拟器呀,所以就想让自己的应用在8.0的系统上面跑一下,前提是得将应用的targetSdkVersion改为27了,否则的话一些8.0的要求不会对app起作用。

          然后就下载了一个android 8.0 系统的模拟器,像往常一样子开始运行了,但是已启动就crash了,oh my god,在错误日志中看到了如下的一句信息;Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation,意思就是“只有不透明的全屏activity可以自主设置界面方向”,是的,我们的启动页面是设置了透明,同时也设置了屏幕方向为竖向,首先我们的orientation一定是要设置的了,所以那就只有不让activity透明了,但是当时为啥要让启动页面透明呢?就是为了解决应用启动时候黑屏或者白屏,所以现在要做的就是不让activity透明且让其启动时候不会有黑屏或者白屏了,有同学说直接用另外一种方式呀,就是给启动页面的style设置一个背景图片呀,但是样子在有虚拟返回键的手机上是有问题的,点击应用之后然后当启动页面展示时候,图片的尺寸会有变化,方便的同学可以试试这种方式,所以如果要使用这种方式需要适配虚拟返回键,不是一种特别好的方式。

         其实又回到了最初的问题,为啥应用启动会有黑屏或者白屏呢?这是因为用户点击应用图标之后,在应用初始化完成之前会展示一个默认的window,而这个preview window的样式取决于自己启动页的theme是怎样的了,如果是light的就是白屏,如果是black的就是黑屏了。

         所以说我们直接禁用这个默认动画不就好了么?所以将原来的windowIsTranslucent改为windowDisablePreview就能起到一样子的效果了,且应用不会崩溃了。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • android 8.0 应用启动崩溃?

相关文章

  • 2017-05-26Android开发艺术探索学习笔记(三),android艺术探索
  • 2017-05-26React-Native系列Android——Touch事件原理及状态效果
  • 2017-05-26Android--split()分割字符串特殊用法,csplit字符串分割
  • 2017-05-26Android 微信第三方登录(个人笔记),android第三方
  • 2017-05-26Android进阶--Acticivity的启动模式,acticvity启动模式
  • 2017-05-26安卓界面组件----列表视图,安卓组件----视图
  • 2018-01-28TiemPicke 和 DatePicker控件 自定义大小
  • 2017-05-26源码解析Android中AsyncTask的工作原理
  • 2017-05-26Android无线开发的几种常用技术综述
  • 2017-05-26Android 实用代码片段,

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 一个帖子学会Android开发四大组件,android四大
    • Android程序版本更新--通知栏更新下载安装,android程序版本
    • 关于Genymotion下载比较慢的解决办法,genymotion解决办法
    • 声明和使用权限,声明使用权限
    • Android事件分发机制浅谈(一),android浅谈
    • org.gradle.api.internal.tasks.DefaultTaskInputs$TaskInputUnionFileCollection cannot be cast to org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection,gradletaskinputs
    • 用树莓派实现对话机器人
    • 解决通过Intent调用系统拍照程序,返回图片太小的问题,intent调用
    • popupwindow展示,popupwindow
    • 实现图片拖动,图片拖动

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有