在Android中使用Facebook.有时我的应用程序在实时设备中兑现,当我尝试在AndroID.not模拟器中授权Facebook时.我使用的是AndroID Facebook SDK.所以我认为线程可能会阻止它.首先尝试了asynctask
Activity act=this;private class fbwork extends AsyncTask<Facebook, Integer, String>{ @OverrIDe protected String doInBackground(Facebook... para) { // Todo auto-generated method stub Log.d(tagg, "Entered async"); if(loginflag==0) { try { para[0].authorize(act, PERMISSIONS, new LoginDialogListener()); }catch(Exception ex) { Log.d(tagg,ex.getMessage()); } Log.d(tagg, tagg.toString()); } else { try { logout(); } catch (MalformedURLException e) { // Todo auto-generated catch block e.printstacktrace(); } catch (IOException e) { // Todo auto-generated catch block e.printstacktrace(); } } return "0"; }
调用代码:
new fbwork().execute(facebook);
产生错误:无法在未调用Looper.Prepare()的线程内创建处理程序
所以尝试了正常的线程方式.
public voID loginprocesure() throws MalformedURLException, IOException{ final Activity ac=this; if(loginflag==0) { new Thread(new Runnable() { public voID run() { // Todo auto-generated method stub facebook.authorize(ac, PERMISSIONS, new LoginDialogListener()); } }).start(); } else { logout(); }}
同样的结果.有任何解决这个问题的方法吗!!!!如何在真实设备中停止应用程序的崩溃.请帮忙.
解决方法:
我遇到了同样的问题.你必须尝试将这个方法放在循环中
Looper.prepare(); new fbwork().execute(facebook); Looper.loop();
总结 以上是内存溢出为你收集整理的Facebook授权不在Android Asynctask或Thread中工作全部内容,希望文章能够帮你解决Facebook授权不在Android Asynctask或Thread中工作所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)