又一个以节目形式展示的主屏幕

时间:2017-02-25 23:37:26

标签: android background homescreen

我想制作一个应用程序,其唯一目的是切换到主屏幕(参见背景故事)。我不知道其他手机的行为,但在Honor 8上,首先点击主屏幕按钮切换到上一个主屏幕,然后重新点击主屏幕按钮切换到默认主屏幕。对不起,我不知道区分主屏幕和“家庭主屏幕”的技术术语,主屏幕与高亮度的房子。只需单击主屏幕按钮,即可访问此主屏幕。

我现在有一个可行的解决方案,但它有两个主要的美容缺陷:

  1. 由于Honor 8需要两次点击主屏幕按钮,因此它在源代码中实现了两次。由于动画,我还需要延迟:

    public class MainActivity extends AppCompatActivity {
      @Override
      protected void onCreate(Bundle savedInstanceState) {
        //Came with the hellow world app and apparently cannot be removed
        super.onCreate(savedInstanceState);
    
        //First "virtual click" of home button
        startActivity(new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME));
    
        //Delay to allow the animation to complete
        try {
            Thread.sleep(800);
        } catch (InterruptedException e) {
          //Not really doing anything clever
        }
    
        //Second "virtual click" of home button
        startActivity(new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME));
    
        //Close the app. (I know, it's deprecated)
        this.finishAffinity();
    }
    

    }

  2. 这不是一个非常优雅的解决方案。直接进入“家庭主屏幕”将更加精简,但如果有一个解决方案,很难找到答案如何进入主屏幕。

    1. 启动应用程序后,应用程序窗口会在开始显示主屏幕的过程之前打开。因此屏幕上有一个闪烁 - 也不是很优雅。该应用程序无法在后台启动?
    2. 赞赏任何正确方向的推动。

      背景故事:

      我有Honor 8,我想配置单击智能按钮以显示主屏幕。这不是一个选项,但按钮可以启动显示主屏幕的应用程序。因为,谁想要在手机解锁时直接进入信息最多的页面,对吧?

1 个答案:

答案 0 :(得分:0)

好的,所以我没有解决帖子中的实际两个问题,这与编程有关。但是,我已经解决了我想要做的事情(ref backstory)。

基本上我所做的就是安装tasker和tasker app factory。在任务中,我做了一个显示主屏幕的任务。此外,它还需要执行两次才能进入“家庭主屏幕”。在两者之间添加100毫秒的延迟。它看起来非常流畅。没有窗口弹出,这是一个很好的平滑过渡,从您居住的应用程序,到主屏幕,然后它滑动到“家庭主屏幕”。导出此任务并配置智能按钮以在单击智能按钮时运行此任务。