m0_71355746 2022-09-17 14:42 采纳率: 0%
浏览 1726
已结题

高工看过来:java 开发手机APP,远程同屏时闪屏,谁能解决?

开发了一款手机app,两部手机在远程同屏的时候 ,在对方所有对应权限全部打开情况下,包括无障碍 ,对方的屏幕会闪一下屏 (不是闪退,是无障碍在替用户点击弹窗,允许同屏,每次都闪一下,很明显。想做到首次同屏可以闪一下屏幕,之后短时间内,再次同屏就不闪屏幕)。此外在对方息屏的情况下,我方不能判断对方是息屏 ,同屏不成功后 ,对方手机再次亮屏会出现 会有提醒弹窗 。此问题解决不了 。还有别的一些问题等待请教。

  • 写回答

11条回答 默认 最新

  • 度假的小鱼 全栈领域新星创作者 2022-09-19 14:49
    关注

    在默认情况下,android应用程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初 始化列表数据、向服务器发送请求获取数据等等。同样,使用startactivity(intent)方法从一个activity进入到新的 activity时,这个过程中也会出现短暂的黑屏。这个问题的存在是由android应用框架决定的,但的确很影响用户体验。试试以下方法
    第一步:自定义theme(主题)
    在your_project/res/values/styles.xml中加入自定义activity的theme,如下所示:

    其中<item name="android:windowistranslucent">true</item>的意思是设置目标 activity(要启动的那个activity)是透明的。很容易理解,两个activity,a和b;在a中启动b,因为b是透明的,看到的背景仍是 a,这样就解决了这个短暂的黑屏问题。
    

    修改代码:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
      <!-- activity主题 -->
      <style name="activitytheme" parent="@android:style/theme">
        <item name="android:windowistranslucent">true</item>
      </style>
    </resources>
    

    第二步:修改manifest,将theme应用到目标activity上
    定义好theme后,就该为对应的activity绑定theme了。这个代码主要在manifest中实现,在activity中加上以下属性:

    <activity android:name=".activity.placingorderstep1activity"
       android:theme="@style/activitytheme" />
    

    第二种方案
    1 在选项卡的应用中使用了未绑定控件的标签

    在选项卡中,应用一些标签对操作进行一些描述,是很多人都经常做的,但要注意,纯标签会造成闪屏,所以,这里即便是纯标签就可以完成的使命,也要故意给它一个可绑定的控件,如文本框.当然,这个文本框一点其他作用也没有,你可以把文本框的属性设置为不可用,锁定,边框及背景都为透明,宽度为0,就能很好地把它"隐藏"了.

    2 在图像控件之上放了未绑定控件的标签

    为了美化窗体,可能会在窗体上布局了图像控件,然后又可能在上面布局了标签,以做按钮使用.这种情况有可能会造成闪屏,解决的方法,可以的话,把背景图象转移到窗体的"图片"属性里去.

    3 把标签当按钮使用时,当鼠标在标签上移动时闪屏

    有很多人喜欢用未绑定的标签做按钮使用,用标签做按钮自然有很多优点,这里不多说,但处理得不好的情况下,就会出现闪屏.这种情况出现在当鼠标在标签之间移动时有移动事件发生,在它的移动事件里,我建议多判断,少执行.不要觉得太多的判断有点烦,但判断多了,就可以尽量少地执行.

    举个简单的例子,当你在一个标签上移动时,你可能想让它文本变成蓝色,那你不能总移动总变色,你要判断下当前是不是蓝色,不是的话,再变色.

    可能还会有其他的原因造成闪屏

    实在不行就找同行远程解决吧。我们有做安卓开发的小伙伴

    评论 编辑记录
  • will_zhanShmily 2022-09-17 18:01
    关注

    不远程同屏会不会有这个闪退的问题。

    评论
  • prince_zxill 2022-09-17 18:38
    关注

    可能因为无线网络不是很稳定,信号不好的时候容易闪退,另外和手机运行也有关系,如果同时打开了很多应用,手机cpu运行速度跟不上容易造成崩溃导致闪退。
    可以找网络信号好的地方进行同屏,或是换一个好的网络,还要检查是否后台运行较多应用,如果是就把其他应用关掉。

    评论
  • 来灵 2022-09-17 18:40
    关注

    检查一下同屏时,发送给对方手机的共享桌面视频,是不是出现丢帧了,如果是丢帧了,丢帧应该挺严重的,闪屏了都。
    可以通过打印日志排查。

    评论 编辑记录
  • Jackyin0720 2022-09-17 20:43
    关注

    手机APP软件问题可能帮助不到你太多,这里给几个测试中常见的影响因素,供你参考:
    1、每个手机亮度,有手动和自动调节亮度的功能,大多手机是自动调节,有可能是手机亮度自动调节的关系;
    建议改成手动调节亮度测试一下
    2、不同手机安装APP应用,都容易存在不兼容问题,当多个应用软件在运行过程中出现不兼容现象,也有可能造成闪屏;建议关掉后台正在运行的一部分程序,只留你远程的APP,再测试一下
    3、手机电压不稳定,也会存在闪屏的可能;建议测试的手机保持电量充足的情况下【大于50%】,再测试一下。
    4、网络以及其他,常见的是网络不稳定,导致我们数据丢失,造成闪屏现象;建议监控下WIFI信号波动和数据传输结果、

    评论
  • 白鸽℡ 2022-09-18 16:26
    关注

    查看是不是在APP上的兼容性问题,弄个测试文件检验一下,查看bug报告

    评论
  • 江拥羡橙 前端领域优质创作者 2022-09-19 08:50
    关注

    调试的时候会有一些依赖编译文件可能会导致这些问题,你可以打包安装到手机看看,还是以最终的真机为主,不用在意调试中的这些问题的

    评论
  • 一把编程的菜刀 2022-09-19 09:10
    关注

    这个闪屏这个和网络也有很大关系的,还有相关授权是否都能获取了,像腾讯会议,有时候同屏的时候网络不好,也会闪屏

    评论
  • Code Writers 全栈领域新星创作者 2022-09-19 10:08
    关注
    1. 保证电量大于%95
    2. 后台无程序
    3. 如果不行可以私聊发录屏演示
    评论
  • 半生苦味半生甜 2022-09-20 10:08
    关注

    没写过同屏功能 给出建议
    1 如果是复刻别人app 也就是外包项目改改直接拿来用的话,先查一下代码,我也遇见过,以为自己完美复制,其实有些地方要改,当然如果自信的话 直接第二条
    2 换个测试机,之前写app的时候有个弹框,就是因为测试机系统有出入,导致以为是安卓写错了,换测试机后发现可以实现然后再让其考虑兼容性
    3 如果换几个不同机器还不行,那就考虑app 再申请权限的时候调用的 比如系统的方法是否能换一下,或者时不时使用插件或者第三方库有什么更新,去官网看一下那些评价
    4 直接从源那里请教

    评论
  • 神梦八荒 2022-09-21 17:31
    关注
    评论

报告相同问题?

问题事件

  • 系统已结题 9月25日
  • 修改了问题 9月19日
  • 修改了问题 9月18日
  • 赞助了问题酬金200元 9月18日
  • 展开全部

悬赏问题

  • ¥15 请教一下simulink中S函数相关问题
  • ¥15 Hadoop中eclipse运行问题
  • ¥15 在二层网络中,掩码存在包含关系即可通信
  • ¥15 端口转发器解析失败不知道电脑设置了啥
  • ¥15 Latex算法流程图行号自定义
  • ¥15 关于#python#的问题:我在自己的电脑上运行起来总是报错,希望能给我一个详细的教程,(开发工具-github)
  • ¥40 基于51单片机实现球赛计分器功能
  • ¥15 cs2游戏画面卡住,应用程序sid与指挥者sid不匹配
  • ¥15 实验七:Pandas要有实验截图和代码
  • ¥15 TypeError: Make sure that the iterable only contains strings.