implemented upload video flow

This commit is contained in:
Mariotaku Lee 2017-01-23 02:37:21 +08:00
parent c4cf97b2c5
commit c34ca2fac6
No known key found for this signature in database
GPG Key ID: 9C0706AE47FCE2AD
1 changed files with 14 additions and 5 deletions

View File

@ -1,5 +1,7 @@
package org.mariotaku.twidere.task.twitter
import android.content.ContentProvider
import android.content.ContentResolver
import android.content.ContentValues
import android.content.Context
import android.graphics.Bitmap
@ -10,6 +12,7 @@ import android.support.annotation.UiThread
import android.support.annotation.WorkerThread
import android.text.TextUtils
import android.util.Pair
import android.webkit.MimeTypeMap
import com.nostra13.universalimageloader.core.DisplayImageOptions
import com.nostra13.universalimageloader.core.assist.ImageSize
import edu.tsinghua.hotmobi.HotMobiLogger
@ -693,7 +696,14 @@ class UpdateStatusTask(
@ParcelableMedia.Type type: Int,
readListener: ContentLengthInputStream.ReadListener): Pair<Body, Point> {
val resolver = context.contentResolver
var mediaType = resolver.getType(mediaUri)
var mediaType = resolver.getType(mediaUri) ?: run {
if (mediaUri.scheme == ContentResolver.SCHEME_FILE) {
mediaUri.lastPathSegment?.substringAfterLast(".")?.let { ext ->
return@run MimeTypeMap.getSingleton().getMimeTypeFromExtension(ext)
}
}
return@run null
}
val size = Point()
val cis = run {
if (type == ParcelableMedia.Type.IMAGE && sizeLimit != null) {
@ -738,11 +748,10 @@ class UpdateStatusTask(
}
cis.setReadListener(readListener)
val contentType: ContentType
if (TextUtils.isEmpty(mediaType)) {
contentType = ContentType.parse("application/octet-stream")
val contentType = if (mediaType != null) {
ContentType.parse(mediaType)
} else {
contentType = ContentType.parse(mediaType!!)
ContentType.parse("application/octet-stream")
}
return Pair(FileBody(cis, "attachment", cis.length(), contentType), size)
}