Java 使用asynctask更改碎片活动

Java 使用asynctask更改碎片活动,java,android,Java,Android,我想建立一个用户注册系统。。我正在使用Facebook SDK,我可以将数据库中的用户信息发送到Facebook并成功注册。但我想在这之后展示不同的片段活动 若用户在Facebook上访问我的应用程序,我将向用户发送异步类不同类而非内部类的数据 在服务器返回Json数据的摘要中,我希望关闭MainFragmentActivity类并打开StartFragmentActivity 我无法在onPostExecute函数中故意这样做。我怎么做 谢谢你的帮助,很抱歉我的英语很差 private voi

我想建立一个用户注册系统。。我正在使用Facebook SDK,我可以将数据库中的用户信息发送到Facebook并成功注册。但我想在这之后展示不同的片段活动

若用户在Facebook上访问我的应用程序,我将向用户发送异步类不同类而非内部类的数据

在服务器返回Json数据的摘要中,我希望关闭MainFragmentActivity类并打开StartFragmentActivity

我无法在onPostExecute函数中故意这样做。我怎么做

谢谢你的帮助,很抱歉我的英语很差

private void makeRequest(final Session session){
    Log.d("deneme","makeRequest ÇALIŞIYOR");
    Request request = Request.newMeRequest(session, new Request.GraphUserCallback() {

        @Override
        public void onCompleted(GraphUser user, Response response) {
            if(session == Session.getActiveSession()){

                if(user != null){
                    new MyAsyncTask(getActivity(), "ssoLR", user.getName(),
                            user.getId(), user.getProperty("email")
                                    .toString());
                }
            }
        }
    });
    request.executeAsync();
}
我的任务类是这样的

public class MyAsyncTask extends AsyncTask<String, Integer, Double> {

public MyAsyncTask(FragmentActivity a, String tag, String username, String password, String email){

    this.mMain = a;
    this.tag = tag;
    this.username = username;
    this.password = password;
    this.email = email;

    execute(tag, username, password, email);

}

@Override
protected Double doInBackground(String... params) {
    if(tag.equals("ssoLR")){
        postData(params[0], params[1], params[2], params[3]);
    }
    return null;
}

public void postData(String tag, String username, String password, String email) {
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://<my website");

    try {
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
        nameValuePairs.add(new BasicNameValuePair("tag", tag));
        nameValuePairs.add(new BasicNameValuePair("name", username));
        nameValuePairs.add(new BasicNameValuePair("password", password));
        nameValuePairs.add(new BasicNameValuePair("email", email));
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

        response = httpclient.execute(httppost);
        } catch (ClientProtocolException e) {

    } catch (IOException e) {

    }
}
protected void onPostExecute(Double result){
    try {
        InputStream inputStream = response.getEntity().getContent();
        InputStreamReader inputstreamreader = new InputStreamReader(inputStream);
        BufferedReader bufferedreader = new BufferedReader(inputstreamreader);
        stringbuilder = new StringBuilder();
        String buffer = null;
        while((buffer = bufferedreader.readLine()) != null){
            stringbuilder.append(buffer);
        }
    } catch (IllegalStateException e) {

    } catch (IOException e) {

    }
}

protected void onProgressUpdate(Integer... progress){

}

HttpResponse response;
StringBuilder stringbuilder;
private String tag, username, password, email;
}

您是从MainFragmentActivity调用MyAsyncTask还是从其他活动调用MyAsyncTask?我是从Fragment调用MyAsyncTask,我将Fragment调用FragmentActivity