//直接上代码 Service : public class UploadPictureService extends Service{ public static final String PATH_KEY = "sdcard_path_list"; private ArrayList<String> picturePaths; private ServiceBinder mBinder; private String TAG = UploadPictureService.class.getName(); public interface IUploadFinishListener { void onUploadFinished(ArrayList<String> jdImgUrls); } public class ServiceBinder extends Binder { IUploadFinishListener callBack; public void keepCallback(IUploadFinishListener cb){ callBack = cb; } public void businessFinished(){ stopSelf(); } } @Nullable @Override public IBinder onBind(Intent intent) { picturePaths = intent.getStringArrayListExtra(PATH_KEY); mBinder = new ServiceBinder(); return mBinder; } @Override public void onCreate() { super.onCreate(); } @Override public int onStartCommand(Intent intent, int flags, int startId) { picturePaths = intent.getStringArrayListExtra(PATH_KEY); uploadPicture(); return super.onStartCommand(intent, flags, startId); } private void uploadPicture(){ // 在这里做实质性的事情 } @Override public void onDestroy() { super.onDestroy(); } } //Activity ...
/** * */ private void uploadPictureByService(ArrayList<String> pathStrings){ Intent intent = new Intent(this, UploadPictureService.class); bindService(intent, new ServiceConnection() { @Override public void onServiceConnected(ComponentName name, IBinder service) { UploadPictureService.ServiceBinder binder = (UploadPictureService.ServiceBinder) service; binder.keepCallback(new ServiceFinishCallback(binder)); } @Override public void onServiceDisconnected(ComponentName name) { } },0); intent.putExtra(UploadPictureService.PATH_KEY,pathStrings); startService(intent); } static class ServiceFinishCallback implements UploadPictureService.IUploadFinishListener { UploadPictureService.ServiceBinder binder; ServiceFinishCallback(UploadPictureService.ServiceBinder binder) { this.binder = binder; } @Override public void onUploadFinished(ArrayList<String> jdImgUrls) { // //if dispose finished binder.businessFinished(); } } ...
不使用ipc 实现 Activity与Service双向通信
最新推荐文章于 2025-06-02 18:42:16 发布