您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 市场营销 > sina微博核心服务类代码
mportjava.io.ByteArrayOutputStream;importjava.io.IOException;importjava.io.UnsupportedEncodingException;importjava.net.MalformedURLException;importjava.net.URL;importjava.net.URLEncoder;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importorg.junit.runner.notification.StoppedByUserException;importcn.cju.weibo.db.LoginData;importcn.cju.weibo.json.JSONException;importcn.cju.weibo.net.http.AccessToken;importcn.cju.weibo.net.http.ImageItem;importcn.cju.weibo.net.http.RequestToken;importcn.cju.weibo.sina.Paging;importcn.cju.weibo.sina.Status;importcn.cju.weibo.sina.User;importcn.cju.weibo.sina.Weibo;importcn.cju.weibo.sina.WeiboException;importcn.cju.weibo.ui.LoginActivity;importcn.cju.weibo.util.GetDataFromURL;importandroid.app.Activity;importandroid.app.AlertDialog;importandroid.app.Service;importandroid.content.Context;importandroid.content.DialogInterface;importandroid.content.Intent;importandroid.graphics.Bitmap;importandroid.graphics.BitmapFactory;importandroid.graphics.Bitmap.CompressFormat;importandroid.graphics.drawable.BitmapDrawable;importandroid.os.Handler;importandroid.os.IBinder;importandroid.os.Message;importandroid.util.Log;importandroid.widget.TextView;importandroid.widget.Toast;publicclassMainServiceextendsServiceimplementsRunnable{privatebooleanisRun;publicstaticbooleanserviceState;publicstaticWeiboweibo;publicstaticUseruser;publicstaticArrayListTaskallTask=newArrayListTask();//TpublicstaticArrayListWeiboActivityallActivity=newArrayListWeiboActivity();//@bgActivity剉茤TpublicstaticHashMapInteger,Bitmapportraites=newHashMapInteger,Bitmap();publicstaticHashMapLong,Bitmaporginal=newHashMapLong,Bitmap();publicstaticHashMapLong,Bitmaporginal_ret=newHashMapLong,Bitmap();publicstaticHashMapLong,Bitmaporginal_mid=newHashMapLong,Bitmap();publicstaticHashMapLong,int[]commrt=newHashMapLong,int[]();@OverridepublicvoidonCreate(){//孾b甠ZS剉R薡Ssuper.onCreate();weibo=newWeibo();newThread(this).start();}//邖ncT蜰Activity茤T-N~b0R鵞擽剉Activity詮轛0RYt筫誰-N籗(u嶯ui剉鬴癳publicstaticWeiboActivitygetActivityByName(StringactivityName){WeiboActivityactivity=null;for(WeiboActivityitem:allActivity){if(item.getClass().getName().indexOf(activityName)0){activity=item;}}returnactivity;}//publicvoidaddTask(Tasktask){allTask.add(task);}@OverridepublicIBinderonBind(Intentintent){returnnull;}@OverridepublicvoidonDestroy(){//S_(ug珗暳k鰁/fN魐籗gbL堺NT-Nsuper.onDestroy();isRun=false;serviceState=false;//緥ng_/T孴sQ頃秗`}@OverridepublicvoidonStart(Intentintent,intstartId){super.onStart(intent,startId);isRun=true;serviceState=true;//緥ng_/T孴sQ頃秗`}@Overridepublicvoidrun(){Taskts=null;while(isRun){synchronized(allTask){//TekTLog.i(isrun,Theserviceisrunning.Tasknumberhas+allTask.size());Log.i(cp,Thecontextpicturehas+orginal.size());Log.i(pp,Theportraitshas+portraites.size());if(allTask.size()0){ts=allTask.get(0);try{doTask(ts);//鸑L堺N}catch(Exceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}}try{Thread.sleep(1*1000);//蟢敄N襶}catch(Exceptione){e.printStackTrace();}}}privatevoiddoTask(Taskts){//wQSOYt剉筫誰try{Messagemsg=hand.obtainMessage();AccessTokenat;switch(ts.getTaskID()){caseTaskType.USER_LOGIN://(u7b{vU_HashMaptaskParams=ts.getTaskParam();StringuserName=(String)taskParams.get(userName);Stringpassword=(String)taskParams.get(password);System.setProperty(weibo4j.oauth.consumerKey,Weibo.CONSUMER_KEY);System.setProperty(weibo4j.oauth.consumerSecret,Weibo.CONSUMER_SECRET);//{vU_坈CgRequestTokenrt=weibo.getOAuthRequestToken();//梍0RRequestTokenStringurl=rt.getAuthorizationURL(userName,password);//9hnc(u7bT孴芠x梍0R坈CgT詮轛剉urlvQ-NS靊坈CgxStringvcorde=weibo.http.get(url).asJSONObject().getString(oauth_verifier);//梍0R坈Cgxat=rt.getAccessToken(vcorde);//(u坈Cg籗穬梍AccessTokenuser=weibo.verifyCredentials();msg.obj=at;//裇怉ccessTokenmsg.what=TaskType.USER_LOGIN;break;caseTaskType.USER_NEW_WEIBO://裇Nag癳剉甠ZSStringcontent=(String)ts.getTaskParam().get(weiboContent);//梍0R噀W[匭筟StatusnewStatus=weibo.updateStatus(content);//裇惍_ZSZSLog.i(newStatus,newStatus.getId()+);msg.what=TaskType.USER_NEW_WEIBO;msg.obj=newStatus;break;caseTaskType.USER_NEW_WEIBO_TEXT_PIC://裇h堽VGr甠ZSYtStringcontentPic=(String)ts.getTaskParam().get(weiboContent);//梍0R噀W[匭筟contentPic=URLEncoder.encode(contentPic,UTF-8);byte[]picByte=(byte[])ts.getTaskParam().get(weiboPic);//梍0RGrpencLog.i(len,get-----------+picByte.length);ImageItemimageItem=newImageItem(pic,picByte);Log.i(JPEG,imageItem.getContentType(picByte));StatusnewStatusPic=weibo.uploadStatus(contentPic,imageItem);booleanb=newStatusPic!=null;Log.i(newStatus,b+------+newStatusPic.toString());msg.what=TaskType.USER_NEW_WEIBO_TEXT_PIC;msg.obj=newStatusPic;break;caseTaskType.USER_GET_STATUS://梍0R(u7b剉甠ZS剉秗`酧o`System.setProperty(weibo4j.oauth.consumerKey,Weibo.CONSUMER_KEY);System.setProperty(weibo4j.oauth.consumerSecret,Weibo.CONSUMER_SECRET);at=LoginData.openAccessToken(this);weibo.setToken(at.getToken(),at.getTokenSecret());//梍0Rf:yNNu槃v耂pethis.user=weibo.verifyCredentials()
本文标题:sina微博核心服务类代码
链接地址:https://www.777doc.com/doc-6358136 .html