尝试/捕获运行Facebook应用程序

时间:2014-09-18 18:27:13

标签: java android eclipse facebook

我有https://www.facebook.com/natgeo的2个链接..(一)如果我有facebook应用程序,它运行它(二)如果我没有Facebook应用程序,它将在浏览器上运行。

以下是代码:

try {  
              String natgeo = "natgeo";  
              String uri = "fb://Page/" + natgeo;      
              Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));  
              startActivity(intent);     
              }  
              catch (ActivityNotFoundException ex){  
              String natgeo = "natgeo";  
              String uri = "https://www.facebook.com/" + natgeo;    
              Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));      
              startActivity(i);   
    }

现在(两个)运行正常,但(一个)运行不正常,它在我的帐户上运行facebook应用程序,如何在facebook应用程序上运行https://www.facebook.com/natgeo


被修改

        doclink.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
            if(!uri.contains("https://www.facebook.com/")) {  
              String natgeo = "natgeo";  
              String uri = "fb://Page/" + natgeo;      
              Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));  
              startActivity(intent);     
              }  
            else{  
              String natgeo = "natgeo";  
              String uri = "https://www.facebook.com/" + natgeo;    
              Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));      
              startActivity(i);   
    }
};

再次编辑

package com.example.a;

import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;


public class MainActivity extends Activity {

    Button dadclink;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        addListenerOnButton();
    }

        public void addListenerOnButton() {
        dadclink = (Button) findViewById(R.id.dadclink);

dadclink.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
            if(!uri.contains("https://www.facebook.com/")) {  
              String natgeo = "natgeo";  
              String uri = "fb://Page/" + natgeo;      
              Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));  
              startActivity(intent);     
             }  
            else{  
              String natgeo = "natgeo";  
              String uri = "https://www.facebook.com/" + natgeo;    
              Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));      
              startActivity(i);   
            }
       )}; 

    } 
}

1 个答案:

答案 0 :(得分:0)

if(!uri.contains("https://www.facebook.com/")) {  
              String natgeo = "natgeo";  
              String uri = "fb://Page/" + natgeo;      
              Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));  
              startActivity(intent);     
              }  
              else{  
              String natgeo = "natgeo";  
              String uri = "https://www.facebook.com/" + natgeo;    
              Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));      
              startActivity(i);   
    }