在app上杀死Intent.ACTION_VIEW

时间:2016-01-20 14:16:23

标签: android android-intent onbackpressed

首先,我不知道如何具体解决这个问题。我启动了我的应用程序,然后开始另一个活动,所以第一个活动堆栈在后面。

在此活动中,通过以下意图启动另一项活动,默认情况下会打开Chrome。

startActivity (new Intent(Intent.ACTION_VIEW, Uri.parse(urlApp)));

然后,我按下设备上的多任务按钮。滑动以关闭打开的Chrome窗口,然后触摸我的应用程序以显示在前面。之后,当我按下按钮应用程序关闭时,没有得到第一个活动。

所有代码都是我的第二项活动。

package com.pozitif.activities;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.LinearLayout;

import com.pozitif.AppController;
import com.pozitif.onelove.R;

public class SocialNewsActivity extends AppCompatActivity implements View.OnClickListener {

    private Toolbar mToolbar;
    private LinearLayout facebookLink, instagramLink, twitterLink;

    private static final String FacebookAppUrl = "fb://facewebmodal/f?href=https://www.facebook.com/onelovefest";
    private static final String FacebookWebUrl = "https://www.facebook.com/onelovefest";
    private static final String InstagramAppUrl = "instagram://user?username=oneloveistanbul";
    private static final String InstagramWebUrl = "https://www.instagram.com/oneloveistanbul/";
    private static final String TwitterAppUrl = "twitter://user?screen_name=oneloveistanbul";
    private static final String TwitterWebUrl = "https://twitter.com/oneloveistanbul";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_social_news);
        AppController.tracker.setScreenName("Sosyal");

        mToolbar = (Toolbar) findViewById(R.id.app_bar);
        //set the Toolbar as ActionBar
        setSupportActionBar(mToolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);

        facebookLink = (LinearLayout) findViewById(R.id.facebook_link);
        facebookLink.setOnClickListener(this);

        instagramLink = (LinearLayout) findViewById(R.id.instagram_link);
        instagramLink.setOnClickListener(this);

        twitterLink = (LinearLayout) findViewById(R.id.twitter_link);
        twitterLink.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.facebook_link:
                goUrl(FacebookAppUrl, FacebookWebUrl);
                break;
            case R.id.instagram_link:
                goUrl(InstagramAppUrl, InstagramWebUrl);
                break;
            case R.id.twitter_link:
                goUrl(TwitterAppUrl, TwitterWebUrl);
                break;
        }
    }

    private void goUrl(String urlApp, String urlWeb) {
        try {
            startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(urlApp)));
        } catch (Exception e) {
            startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(urlWeb)));
        }
    }
}

1 个答案:

答案 0 :(得分:0)

我忘了添加,我的第一个活动设置为singleInstance,所以我删除了singleInstane以解决我的第一个活动问题。