我是Android新手。我正在使用fbrocket示例作为我的应用程序的状态发布,但我无法从我的应用程序注销。状态消息将从此应用程序成功发布,但当我关闭我的应用程序时,我还想从Facebook注销。
我该怎么做?
请帮帮我。
package com.drc.Incognito;
import net.xeomax.FBRocket.FBRocket;
import net.xeomax.FBRocket.LoginListener;
import net.xeomax.FBRocket.ServerErrorException;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
public class Facebook extends Activity implements LoginListener {
private FBRocket fbRocket;
Bundle bundle;
int i;
String rname,rshopno,raddress,rcity,rphone,remail,rpostcode;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle bundle = getIntent().getExtras();
rname=bundle.getString("keyshop_name");
rshopno=bundle.getString("keyshop_no");
raddress=bundle.getString("keystreet");
rpostcode=bundle.getString("keypostcode");
rcity=bundle.getString("keycity");
rphone=bundle.getString("keyphone");
remail=bundle.getString("keyemail");
shareFacebook();
}
public void shareFacebook() {
fbRocket = new FBRocket(this, "PitchFork TRY",
"c3968bbdd9dc7f44a8e05b7346f46673");
if (fbRocket.existsSavedFacebook()) {
fbRocket.loadFacebook();
} else {
fbRocket.login(R.layout.main);
}
}
@Override
public void onLoginFail() {
fbRocket.displayToast("Login failed!");
fbRocket.login(R.layout.main);
}
@Override
public void onLoginSuccess(net.xeomax.FBRocket.Facebook facebook) {
// TODO Auto-generated method stub
try {
System.out.println("Incognito Shop: " +"\n" +rname +"\n" +raddress+ " " + rshopno +"\n" +rpostcode + " " +rcity + "\n" +rphone +"\n" + remail);
fbRocket.displayToast("Login success!");
facebook.setStatus("Incognito Shop: " +"\n" +rname +"\n" +raddress+ " " + rshopno +"\n" +rpostcode + " " +rcity + "\n" +rphone +"\n" + remail);
fbRocket.displayDialog("Status Posted Successfully!! ");
// Intent in = new Intent(this,ShopDetail.class);
// startActivity(in);
facebook.logout();
finish();
} catch (ServerErrorException e) {
if (e.notLoggedIn()) {
fbRocket.login(R.layout.main);
} else {
System.out.println(e);
}
}
}
}
您能否告诉我在关闭申请时如何退出申请?
答案 0 :(得分:3)
实际上这些应用程序是一键转应用程序,因此它们只需要一次用户名和密码。然后,这些应用程序将它们存储在其私有文件中,因此每当下次启动应用程序时,用户都会自动登录。由于他们使用的设备是个人设备,所以提供此功能,因此无需注销。但是,如果您想要注销该应用程序,唯一的方法是清除数据 ..转到Settings -> Applications -> Manage Application -> Select Application -> Clear Data
。
答案 1 :(得分:1)
我很确定fbRocket使用Facebook Graph API。您必须记住的是,Facebook库使用名为OAuth的授权协议。这允许最终用户登录Facebook,并且在成功时,Facebook返回访问令牌。此令牌不会永远持续(通常,它们具有TTL(生存时间))。
此令牌存在于每个应用程序和用户身份验证中,因此如果用户从Facebook注销,则访问令牌将过期并将被视为已过时。
在这方面,你不必太担心。