2011-12-24 75 views
-1

我有一个天真的问题,但我很困惑:我做了使用Facebook SDK的应用程序,并且它在我的设备和模拟器上运行良好,并且它不适用于客户的设备。他没有得到任何错误或例外 - 当他按下授权按钮时,他将看到“加载”消息,但进度条将被关闭,授权将被取消。它有什么问题?谢谢你的提示如何在不同的Android设备上执行FB客户端?

private void submitExec() { 

/*  if (SQLiteDbWrapper.getInstance().getBookCount()==0) { 

      Toast.makeText(this, "A list of books is empty", Toast.LENGTH_LONG).show(); 
      return; 
     }*/ 

     SQLiteDbWrapper.getInstance().makeFacebook(this, this.getApplicationContext()); 
     if (SQLiteDbWrapper.getInstance().getConnector().getFacebook().isSessionValid()) { 
      //new SubmitClass().execute(); 
     } 
     else { 

      SessionEvents.AuthListener listener = new SessionEvents.AuthListener() { 

       @Override 
       public void onAuthSucceed() { 
        //MyBookDroidActivity.this.executeSubmitClass(); 
       } 

       @Override 
       public void onAuthFail(String error) { 

       } 
      }; 
      SessionEvents.addAuthListener(listener); 
      SQLiteDbWrapper.getInstance().getConnector().login(); 
     } 
    } 

它是授权的功能。

public void makeFacebook(Activity activity, Context context) { 

    if (mConnector==null||!mConnector.getFacebook().isSessionValid()) { 
     mConnector=new FacebookConnector(FACEBOOK_APPID, activity, context, 
     new String[] {"publish_stream", "read_stream", "email"}); 
    } 
} 

它是制作FacebookConnector的功能。

+3

你需要在特定的手机上运行某种LogCat以提供更多信息,否则您的问题将无法解决。另外,我建议在模拟器中的许多不同SDK上运行您的应用程序。 – TryTryAgain 2011-12-24 11:13:22

+0

代码会帮助... – 2011-12-24 11:21:40

+1

已添加代码,请检查它。 – user1078760 2011-12-24 11:28:35

回答

0

尝试添加日志:

public void appendLog(String text) 
{  
    File logFile = new File("sdcard/log.file"); 
    if (!logFile.exists()) 
    { 
     try 
     { 
     logFile.createNewFile(); 
     } 
     catch (IOException e) 
     { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
     } 
    } 
    try 
    { 
     //BufferedWriter for performance, true to set append to file flag 
     BufferedWriter buf = new BufferedWriter(new FileWriter(logFile, true)); 
     buf.append(text); 
     buf.newLine(); 
     buf.close(); 
    } 
    catch (IOException e) 
    { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 

如果您不能运行某种logcat的或收集装置上自己的堆栈跟踪,你可能想看看: http://code.google.com/p/microlog4android/