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