在没有展示的情况下开始活动

时间:2014-12-17 13:58:27

标签: android background back-button android-context start-activity

我试图从服务开始活动而不向用户展示,让它在后台运行,我正在搜索很多,我发现了两种方法

  1. 通过启动活动然后启动主屏幕,如下所示:

    // this is for lunch the app
    Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.example.some");
    
    // this is for going back
    Intent startMain = new Intent(Intent.ACTION_MAIN);
    startMain.addCategory(Intent.CATEGORY_HOME);
    startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    
    // lets do it !
    startActivity(LaunchIntent);
    startActivity(startMain);
    
    1. 通过在活动本身中添加一个返回功能,如下所示:

      context.getActivity().moveTaskToBack(true);
      
    2. 但是,在这两种方式中我遇到了问题 在第一个,如果用户在另一个应用程序,此操作将关闭他的应用程序并让他回家,更多,有时我的活动没有开始但只是在后面没有工作,即如果有一首歌它没有被播放 在第二个,当我的活动开始时,黑屏将在返回主页或以前的用户应用程序之前显示一秒钟

      所以,简单地说,这就是我想要的: 我希望行为等于:用户打开我的应用程序然后按下后退按钮,但没有显示应用程序启动,除非他看到后台应用程序

      怎么做?

1 个答案:

答案 0 :(得分:-1)

为此,您可以使用Android服务。 请参阅文档 - http://developer.android.com/guide/components/services.html