现在要做一个android分屏异显,没有思路,求指点

dingsoi 2014-08-13 03:07:29
就是实现两个屏幕同时显示两个activity,上面的大屏幕播放广告,下面的屏幕可以进行操作,而且两者独立,当有人操作下面的屏幕时,上面的广告仍会继续播放。
我是听说Android4.4中google官方支持了分屏,我也看了下google官方最新的那个API20,但是无奈我是新手,从没看过API这么大的东西,以前最多也只是知道查查某个类的某个函数,不知道怎么找那个分屏异显的,求知道,急求
...全文
946 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
锋巅 2016-09-12
  • 打赏
  • 举报
回复
问题解决没,我也在处理这个问题
zhanxiaozhang 2016-08-08
  • 打赏
  • 举报
回复
两个panel都能触摸控制?
chrispaul331 2016-07-04
  • 打赏
  • 举报
回复
我我们也有这种需求,需要在Presentation,做播放,Presentation里需要做一些弹出窗 做控制。
karry55555 2015-03-30
  • 打赏
  • 举报
回复
大侠,请问下文怎么样,我现在也碰到这个问题,请指教!
e判官 2014-08-21
  • 打赏
  • 举报
回复
很实际的问题,顶起!
sky-Z 2014-08-21
  • 打赏
  • 举报
回复
引用 14 楼 u011469081 的回复:
[quote=引用 13 楼 YKDSea 的回复:] [quote=引用 11 楼 u011469081 的回复:] [quote=引用 9 楼 YKDSea 的回复:] 做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
我采用的做法是把第二屏的加载全部写到service中,开启服务就好,但是这里就是presentation的初始化函数 public Presentation (Context outerContext, Display display) Creates a new presentation that is attached to the specified display using the default theme. 这里的outerContext必须要activity,不知道怎么处理啊[/quote] 没有说必须是activity,Presentation会自己建立一个新的context的,不是用传进来的context。[/quote] The context of the application that is showing the presentation. The presentation will create its own context (see getContext()) based on this context and information about the associated display. 你看,这是对那个context参数的解释,我知道presentation会创建自己的context,但是它是在这个参数context之上的啊[/quote] 你自己试过了吗?不行?
dingsoi 2014-08-21
  • 打赏
  • 举报
回复
引用 13 楼 YKDSea 的回复:
[quote=引用 11 楼 u011469081 的回复:] [quote=引用 9 楼 YKDSea 的回复:] 做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
我采用的做法是把第二屏的加载全部写到service中,开启服务就好,但是这里就是presentation的初始化函数 public Presentation (Context outerContext, Display display) Creates a new presentation that is attached to the specified display using the default theme. 这里的outerContext必须要activity,不知道怎么处理啊[/quote] 没有说必须是activity,Presentation会自己建立一个新的context的,不是用传进来的context。[/quote] The context of the application that is showing the presentation. The presentation will create its own context (see getContext()) based on this context and information about the associated display. 你看,这是对那个context参数的解释,我知道presentation会创建自己的context,但是它是在这个参数context之上的啊
sky-Z 2014-08-21
  • 打赏
  • 举报
回复
引用 11 楼 u011469081 的回复:
[quote=引用 9 楼 YKDSea 的回复:] 做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
我采用的做法是把第二屏的加载全部写到service中,开启服务就好,但是这里就是presentation的初始化函数 public Presentation (Context outerContext, Display display) Creates a new presentation that is attached to the specified display using the default theme. 这里的outerContext必须要activity,不知道怎么处理啊[/quote] 没有说必须是activity,Presentation会自己建立一个新的context的,不是用传进来的context。
哎,真难 2014-08-21
  • 打赏
  • 举报
回复
4.0我就看到有app做分屏了,只是不知道如何实现,,,
dingsoi 2014-08-21
  • 打赏
  • 举报
回复
引用 9 楼 YKDSea 的回复:
做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
我采用的做法是把第二屏的加载全部写到service中,开启服务就好,但是这里就是presentation的初始化函数 public Presentation (Context outerContext, Display display) Creates a new presentation that is attached to the specified display using the default theme. 这里的outerContext必须要activity,不知道怎么处理啊
sky-Z 2014-08-21
  • 打赏
  • 举报
回复
引用 18 楼 u011469081 的回复:
[quote=引用 15 楼 YKDSea 的回复:] [quote=引用 14 楼 u011469081 的回复:] [quote=引用 13 楼 YKDSea 的回复:] [quote=引用 11 楼 u011469081 的回复:] [quote=引用 9 楼 YKDSea 的回复:] 做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
我采用的做法是把第二屏的加载全部写到service中,开启服务就好,但是这里就是presentation的初始化函数 public Presentation (Context outerContext, Display display) Creates a new presentation that is attached to the specified display using the default theme. 这里的outerContext必须要activity,不知道怎么处理啊[/quote] 没有说必须是activity,Presentation会自己建立一个新的context的,不是用传进来的context。[/quote] The context of the application that is showing the presentation. The presentation will create its own context (see getContext()) based on this context and information about the associated display. 你看,这是对那个context参数的解释,我知道presentation会创建自己的context,但是它是在这个参数context之上的啊[/quote] 你自己试过了吗?不行?[/quote] 额,当然试过,这里好像必须要填一个activity的context,而且这个activity跳转后presentation就消失了,如果说用getApplicationContext()就直接报错,也不行[/quote] 那直接换window去做吧,本来挺简单的,用Presentation本来就是在绕圈子,没必要的。
dingsoi 2014-08-21
  • 打赏
  • 举报
回复
引用 12 楼 heaimnmn 的回复:
4.0我就看到有app做分屏了,只是不知道如何实现,,,
那时候好像官方并没有明确支持分屏,估计是自己想的办法把,我查分屏资料的时候还有2.3的分屏,那些大神真是厉害
dingsoi 2014-08-21
  • 打赏
  • 举报
回复
引用 15 楼 YKDSea 的回复:
[quote=引用 14 楼 u011469081 的回复:] [quote=引用 13 楼 YKDSea 的回复:] [quote=引用 11 楼 u011469081 的回复:] [quote=引用 9 楼 YKDSea 的回复:] 做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
我采用的做法是把第二屏的加载全部写到service中,开启服务就好,但是这里就是presentation的初始化函数 public Presentation (Context outerContext, Display display) Creates a new presentation that is attached to the specified display using the default theme. 这里的outerContext必须要activity,不知道怎么处理啊[/quote] 没有说必须是activity,Presentation会自己建立一个新的context的,不是用传进来的context。[/quote] The context of the application that is showing the presentation. The presentation will create its own context (see getContext()) based on this context and information about the associated display. 你看,这是对那个context参数的解释,我知道presentation会创建自己的context,但是它是在这个参数context之上的啊[/quote] 你自己试过了吗?不行?[/quote] 额,当然试过,这里好像必须要填一个activity的context,而且这个activity跳转后presentation就消失了,如果说用getApplicationContext()就直接报错,也不行
sky-Z 2014-08-18
  • 打赏
  • 举报
回复
做一个service啊,你可以把广告的屏幕作为第二屏幕,写一个带window的service,把这个window设置到第二屏幕上。 设置window在第二屏幕的做法,你看看presentation里面怎么写的就知道了。
dingsoi 2014-08-18
  • 打赏
  • 举报
回复
引用 7 楼 YKDSea 的回复:
audio输出如果是一路的话好做一些,因为每个audiotrack都可以设置自己的volume,这样你可以在主屏的广告播放那调用mediaplayer的setVolume来控制他的音量,另外一个屏幕上的走系统的音量设置就好了。 亮度设置和两路audio输出的控制,标准api没有,最好问下你用的平台的方案商。
大神,今天我弄的时候发现个问题,就是presentation必须要依赖于一个activity,demo中都是只有一个activity,确实没问题,但是我下面的小屏幕操作跳转之后,presentation之前的广告就没了,我试着把这个presentation做成一个全局变量,但是presentation的初始化还是要涉及到具体的一个activity,我现在想的只有是把他做成只有一个activity,然后下面用fragment的去替换,不过我们工程师也说最好别这样,因为下面的操作也很复杂,弄成fragment他们也会很难弄,帮我想想办法把,我也最多只能想到这个fragment了
sky-Z 2014-08-15
  • 打赏
  • 举报
回复
audio输出如果是一路的话好做一些,因为每个audiotrack都可以设置自己的volume,这样你可以在主屏的广告播放那调用mediaplayer的setVolume来控制他的音量,另外一个屏幕上的走系统的音量设置就好了。 亮度设置和两路audio输出的控制,标准api没有,最好问下你用的平台的方案商。
dingsoi 2014-08-15
  • 打赏
  • 举报
回复
引用 5 楼 YKDSea 的回复:
你在哪个版本的android上跑的这个apk?看log是class找不到,应该是版本问题。 另外你可以把那个presentation那个activity直接copy出来,自己做一个apk来跑。
谢谢谢谢,跑出来了,我也照样子自己写了个,也能跑,不过有个问题想请教,我最终实现的效果是希望这个presentation的音量和亮度与主activity是独立的,就是说调节presentation的音量,亮度时,不会影响到主屏
sky-Z 2014-08-14
  • 打赏
  • 举报
回复
你在哪个版本的android上跑的这个apk?看log是class找不到,应该是版本问题。 另外你可以把那个presentation那个activity直接copy出来,自己做一个apk来跑。
dingsoi 2014-08-14
  • 打赏
  • 举报
回复
引用 3 楼 YKDSea 的回复:
4.4的分屏异显,不是显示两个app(至少目前还不能完善支持),是要用特定的api来写一个界面,在external display上显示。
google给的方法是通过android.app.Presentation来写界面,在4.4的apiDemo中有例子的。
另外就是setting的开发选项中,有一个“模拟显示设备”的选项可以模拟出一个屏幕出来去玩玩吧,配合api demos,可以看到两个screen显示不同内容的效果。

大神,我按照你说的,找到那个demo,但是为什么跑起来总是失败,编译没错,但是再手机上运行总是直接就闪退,这是logcat的信息

求指导,是我引错了包,还是什么,我搞不清楚啊
sky-Z 2014-08-13
  • 打赏
  • 举报
回复
4.4的分屏异显,不是显示两个app(至少目前还不能完善支持),是要用特定的api来写一个界面,在external display上显示。 google给的方法是通过android.app.Presentation来写界面,在4.4的apiDemo中有例子的。 另外就是setting的开发选项中,有一个“模拟显示设备”的选项可以模拟出一个屏幕出来去玩玩吧,配合api demos,可以看到两个screen显示不同内容的效果。
加载更多回复(1)

80,352

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧