35 lines
1.0 KiB
Java
35 lines
1.0 KiB
Java
package com.yunbao.share;
|
|
|
|
import android.content.Context;
|
|
import android.content.IntentFilter;
|
|
import android.net.Uri;
|
|
|
|
import androidx.core.content.FileProvider;
|
|
|
|
import com.twitter.sdk.android.tweetcomposer.TweetUploadService;
|
|
import com.yunbao.share.bean.ShareBean;
|
|
import com.yunbao.share.receiver.TwitterResultReceiver;
|
|
|
|
import java.io.File;
|
|
|
|
public abstract class AbsShareInterface {
|
|
protected final Context mContext;
|
|
|
|
public AbsShareInterface(Context context) {
|
|
this.mContext = context;
|
|
IntentFilter filter = new IntentFilter(TweetUploadService.UPLOAD_SUCCESS);
|
|
filter.addAction(TweetUploadService.UPLOAD_FAILURE);
|
|
filter.addAction(TweetUploadService.TWEET_COMPOSE_CANCEL);
|
|
context.registerReceiver(new TwitterResultReceiver(), filter);
|
|
}
|
|
|
|
public abstract void share(ShareBean builder, ICallback callback);
|
|
|
|
public Uri fileToUri(File file){
|
|
return FileProvider.getUriForFile(mContext,
|
|
mContext.getPackageName() + ".fileprovider",
|
|
file
|
|
);
|
|
}
|
|
}
|