应用内的浮动视图

时间:2018-07-18 08:51:07

标签: android android-view floating

我正在尝试实现一个浮动的可拖动视图,该视图将显示在单个应用程序的所有活动中。
这意味着用户将能够在屏幕上拖动屏幕高度为30%,宽度为50%的视图,并将其绘制在应用程序中任何活动上方。当用户将切换到同一应用程序中的另一个活动时,浮动视图应保留在同一位置。

我知道可以使用SYSTEM_ALERT_WINDOW权限,我想避免这种权限,因为只需要在应用程序中显示此视图,并且我不希望用户被要求批准这种权限。 / p>

另一个要点:
该视图将成为SDK的一部分。
表示我对应用程序的活动/片段/布局不承担任何责任。
我可以/假设:

  • 托管应用将继承的基本应用
  • 所有的根布局都有一些标识符,并且具有某种特定的类型(例如,所有的根布局都是RelativeLayout并有一个ID root_layout

4-6年前提出的类似问题,给出了0个令人满意的答案:

1 个答案:

答案 0 :(得分:0)

我可以建议您使用在后台运行该特定视图的服务。在您希望特定视图保持可操作状态之前,使用服务可以满足您的需求,直到用户选择手动禁用或关闭它为止。您需要使用异步服务(即IntentService),这样它才不会影响您的ui主线程(请不要忘记活动的生命周期和层次结构)。

请参阅以下链接。 1-链接到Google开发人员 https://developer.android.com/training/run-background-service/create-service

2-链接到此类实现的示例 https://medium.com/exploring-code/create-chat-heads-like-facebook-messenger-32f7f1a62064