0
我可以在沒有UI的情況下從bach堆棧移除活動嗎?我可以在沒有用戶界面的情況下移除活動嗎?
我有一個活動ShareAct,沒有UI來包含共享邏輯使用Facebook的SDK。 ContentAct是顯示內容的活動。
ContentAct -> ShareAct -> Facebook sdk
ShareAct沒有view,只是onActivityResult()方法來處理Facebook的返回結果。
問題是,從Facebook的SDK分享後,ShareAct走到前面,但它沒有用戶界面。 如果我在調用Facebook sdk之後調用ShareAct的finish(),則不會調用onActivityResult()。
我可以從bach堆棧中刪除ShareAct,但讓它的onActivityResult()被正常調用嗎? 或者這不是使用活動的正確方法嗎? ShareAct的
代碼是一樣的東西如下:
public class ShareAct extends BaseAct {
CallbackManager callbackManager;
ShareDialog shareDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
callbackManager = CallbackManager.Factory.create();
shareDialog = new ShareDialog(this);
shareLink(...);
// finish();
}
private void shareLink(String url, String title, String desc, String imagePath) {
if (ShareDialog.canShow(ShareLinkContent.class)) {
...
shareDialog.show(linkContent);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
callbackManager.onActivityResult(requestCode, resultCode, data);
}
}
由於慢的網絡連接,所述ShareAct的黑色視圖將之前完成顯示一個或兩秒鐘。這可以避免,只是回到ContentAct? – Malloc
爲什麼不簡單地顯示一個忙碌的對話框,同時它忙於做它的東西? – waqaslam
我希望緩慢的連接不應該阻止用戶的操作,也許它可以在後臺完成這項工作。 – Malloc