Unity打包的apk在安卓4.4.2盒子上碰到的问题

这篇具有很好参考价值的文章主要介绍了Unity打包的apk在安卓4.4.2盒子上碰到的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目场景:

Unity开发的项目需要在安卓4.4.2盒子上运行。


问题描述

1、会出"从顶部向下滑动即可退出全屏模式。"的弹框,这是android4.4的一个特性,叫做沉浸模式(Full-screen Immersive Mode),当app启用该模式时,应用程序的界面会占据整个屏幕,屏幕上方的状态栏和下方的导航栏会被隐藏,从屏幕顶端向下滑动就可以再次呼出状态栏和导航栏,系统为了提醒用户就多加了一个提示装口。需要去掉这个弹框,否则用户无法进行下面的操作。
2、部分项目在启动过程中加载很慢,经测试有三款项目在启动过程有20-30秒的加载时间;加载时间过长需要优化。


原因分析:

1、安卓4.4以上的特性造成,但是大部分盒子针对这个特性做了优化,个别型号的盒子没有做优化所以会有这个问题出现。

2、加载问题可能造成的原因:资源过大、打包方式问题、加载方式问题。


解决方案:

1、

第一种方法:这个方法测试后不行,可能是我这边的问题

这个提示对于某些特殊的情况来说造成困扰,比如说某些深度定制的android系统无法使用鼠标或者触摸屏,打开全屏应用时,一旦出现了这个提示就无法消除,非常影响用户体验。所以需要去除这个提示窗口。


此处并不是说要去除android的沉浸模式这个特性,而是仅仅去掉这个提示窗口。


相关代码位于frameworks/base/policy/src/com/android/internal/policy/impl/目录下的ImmersiveModeConfirmation.java文件里,打开这个文件,找到:
 


private final class H extends Handler {
         private static final int SHOW = 0;
         private static final int HIDE = 1;
 
         @Override
         public void handleMessage(Message msg) {
             switch(msg.what) {
                 case SHOW:
                     handleShow((String)msg.obj);
                     break;
                 case HIDE:
                     handleHide();
                     break;
             }
         }
     }

这段代码的功能就是呼出和隐藏提示窗口的,我们只需要屏蔽掉handleMessage方法中的handleShow((String)msg.obj)和handleHide()即可。

第二种方法:重新onWindowFocusChanged方法(此方法经测试cocos的可以去掉,unity的不行)

public void onWindowFocusChanged(boolean hasFocus){
 super.onWindowFocusChanged(hasFocus);
if(hasFocus){
showSystemUI();
}
}

public void showSystemUI(){

Handler mHandler = new Handler(){
public void handleMessage(Message msg){

getWindow().getDecorView().setSystemUiVisibility()(

View.SYSTEM_UI_FLAG_STABLE|View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
|View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
);

}

};
mHandler.sendEmptyMessageDelayed(0,100);
}

重写后cocos项目可以去掉弹框正常运行了,但是Unity项目还是不行,继续找其他解决方法;

其他公司技术支持建议修改activity的theme:修改为“@android:style/Theme.Translucent.NoTitleBar.Fullscreen”

Application的theme修改为;

<style name="titleTheme" parent="android:Theme" >
        <!-- <item name="android:windowTitleSize">30dp</item>  -->
        <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
        <item name="android:windowTitleStyle">@style/CustomWindowTitle</item>
        <item name="android:windowTitleSize">0sp</item>
    </style>

修改theme后还是不行;

第三种方法:使用Unity插件(unityShowAndroidStatusBar.aar)

这个插件网上应该能搜到,是有人封装好之后分享的。之前在遇到这个问题的时候,公司技术使用插件解决过类似问题,但是使用插件后还是不行,怀疑是unity版本问题,现在使用的是unity2019.4.9f1,之前使用的是unity5.4.5f1;所以,使用5.4.5版本Unity创建空项目添加插件后在盒子上运行,成功去掉弹框。所以,将所有项目从2019降版本到5.4.5(降版本很蛋疼)。

2、加载问题解决方案:(有加载问题的是Unity的项目,而且有三款没有加载问题,有三款有)先优化包体,包体从38兆优化到15兆,加载时间一样;继续修改打包方式,将打包方式改为和没有问题的项目一致,还是不行;用Unity打包改为导出后由androidstudio打包,还是不行;从log中看到加载进度在4%的时候等待了20秒才继续加载,而且中间没有报错;怀疑是有较大资源文件导致,检查项目发现有一个音频文件较大,有2.5M,直接去掉这个音频打包后测试,加载时间变为3秒,问题应该就出在音频文件上了,继续看另外两款游戏,果然都有较大的音频文件,将音频文件压缩到300Kb大小,打包后测试,加载依旧很快,至此,问题解决,全部压缩音频文件,全部重新打包,测试后全部通过。

插件我回头会上传到csdn,或者私信找我拿就行。文章来源地址https://www.toymoban.com/news/detail-428272.html

到了这里,关于Unity打包的apk在安卓4.4.2盒子上碰到的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity3d发布android项目,打包apk包流程(unity2021.3.10)

    1、如下图,在安装版本设置里,点击添加模块。如果没有添加模块,证明你安装路径不是目前版本的安装路径,先去设置回来。 2、框选Android Build Support,点击继续,如下图, 3、同意,安装,如下图, 4、等待安装完成即可,如下图。 1、点击菜单栏File→Build Settings,进行编辑

    2023年04月23日
    浏览(62)
  • uniapp安卓本地打包成apk

    1.HBuilderX最新版 2.与HBuilderX版本对应版本的“Android 离线SDK - 正式版”, 下载见:https://nativesupport.dcloud.net.cn/AppDocs/download/android.html 3.Android Studio,官方下载地址:https://developer.android.google.cn/studio?hl=zh-cn 4.java1.8环境 输入生成证书的命令,格式为: keytool -genkey -alias 证书别名 -k

    2024年01月18日
    浏览(51)
  • 【b站咸虾米】chapter4_vue组件_新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握

    课程地址:【新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握】 https://www.bilibili.com/video/BV1mT411K7nW/?p=12share_source=copy_webvd_source=b1cb921b73fe3808550eaf2224d1c155 uni-app官网 组件,无论是小程序还是vue,都是非常关键的。 现在单页面程序,主要的依据就是组件。 组件

    2024年01月20日
    浏览(64)
  • 【b站咸虾米】chapter3_vue基础_新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握

    课程地址:【新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握】 https://www.bilibili.com/video/BV1mT411K7nW/?p=12share_source=copy_webvd_source=b1cb921b73fe3808550eaf2224d1c155 目录 三、vue基础 3.1 vue介绍与传统js的差异化  3.2 模板语法 3.3 data属性 3.4 条件渲染  3.4.1 v-if和v-else 3.4

    2024年01月21日
    浏览(181)
  • 安卓APK反编译+修改+重打包+签名

    反编译工具包地址:百度网盘 提取码:dsu3 解压后有四个压缩包:apktool.rar、dex2jar、jdgui、Auto-Sign; 注意,将反编译包的路径改为全英文的,以防发生意外。 修改APK的后缀名为zip,并解压。 进入解压包,得到classes.dex文件。 复制classes.dex文件到dex2jar文件夹中。 在该文件夹中

    2024年02月13日
    浏览(58)
  • 蒲公英打包环境搭建碰到问题

    一:证书那边选择手动,不要自动,——》debug配置dev证书,release配置ad-hoc证书 二:证书有时候不生效,删除重新下载。~/Library/MobileDevice/Provisioning Profiles 三:更新测试手机时,itunes编辑ad-hoc证书下载,本地重新打包 四:XCode14.3 打包后再iOS13设备上崩溃,解决方案:用低版本

    2024年02月16日
    浏览(37)
  • 【b站咸虾米】chapter1&2_uniapp介绍与uniapp基础_新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握

    课程地址:【新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握】 https://www.bilibili.com/video/BV1mT411K7nW/?p=12share_source=copy_webvd_source=b1cb921b73fe3808550eaf2224d1c155 目录 一、uniapp和HBuilderX介绍 二、uniapp基础 2.1  新建项目、项目目录、预览uni项目 2.1.1 新建项目 2.1.2 项目

    2024年01月20日
    浏览(61)
  • uni-app离线打包安卓apk

    记录一下打包apk的过程: 参考:uni-app离线打包官网地址 2-1.遇见问题 1. 加载.idea和.gradle失败, 解决: File → Project Structure 重新构建: File → Sync Project with Gradle Files 安卓结构: Project → Android 登录开发者中心选择需要打包的应用→各平台信息→查看或新增安卓打包信息 这里

    2024年04月17日
    浏览(78)
  • 利用MSF打包加固APK对安卓手机进行控制

    由于经典的MSF生成apk安装包控制,版本较低,高版本安卓手机可能会出现版本不支持或无法使用的现象,而且apk无法正常使用,没有图形化界面,比较假。 相比于原始的msf远控,此版本app在进行远控时,被注入的app可以正常运行,原始msf生成的app程序,只在桌面上有一个图标

    2024年01月16日
    浏览(42)
  • [安卓逆向]apktool实现APK反编译、重打包、签名

    apktool 主要用于逆向apk文件。它可以将资源解码,并在修改后可以重新构建它们。 APKtool官网: https://ibotpeaches.github.io/Apktool/ APKtool下载: https://bitbucket.org/iBotPeaches/apktool/downloads/ APKtool源码: https://github.com/iBotPeaches/Apktool 将 apktool_2.6.1.jar 放到一个文件夹下(如:D:apktool),然

    2024年02月03日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包