jpp des MMS

This commit is contained in:
odrling 2018-04-01 18:53:06 +02:00
parent bce8a4020e
commit b71eb56d1a
3 changed files with 17 additions and 16 deletions

View file

@ -0,0 +1,5 @@
package xyz.johnny.norntalk.messages
import com.klinker.android.send_message.MmsFileProvider
class NornMMSFileProvider : MmsFileProvider()

View file

@ -4,6 +4,9 @@ import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.util.Log
import android.widget.Toast
import com.klinker.android.send_message.MmsSentReceiver.EXTRA_FILE_PATH
import java.io.File
/**
* Classe recevant les MMS.
@ -12,6 +15,10 @@ class NornMMSReceiver: BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
Log.d(this::class.java.simpleName, "MMS received")
Toast.makeText(context, "MMS received", Toast.LENGTH_LONG).show()
val filePath = intent?.getStringExtra(EXTRA_FILE_PATH)
File(filePath).delete()
}
}

View file

@ -457,9 +457,6 @@ class NornTransaction constructor(private val context: Context) {
val mSendFile = File(context.cacheDir, fileName)
val sendReq = buildPdu(context, addresses, subject, parts)
val persister = PduPersister.getPduPersister(context)
val messageUri = persister.persist(sendReq, Uri.parse("content://mms/outbox"),
false, settings.group, null)
val intent: Intent
if (explicitSentMmsReceiver == null) {
@ -469,32 +466,24 @@ class NornTransaction constructor(private val context: Context) {
intent = explicitSentMmsReceiver
}
intent.putExtra(MmsSentReceiver.EXTRA_CONTENT_URI, messageUri.toString())
intent.putExtra(MmsSentReceiver.EXTRA_FILE_PATH, mSendFile.path)
val pendingIntent = PendingIntent.getBroadcast(
context, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT)
val writerUri = Uri.Builder()
.authority("com.klinker.android.send_message.MmsFileProvider")
.authority("xyz.johnny.norntalk.messages.NornMMSFileProvider")
.path(fileName)
.scheme(ContentResolver.SCHEME_CONTENT)
.build()
var writer: FileOutputStream? = null
var contentUri: Uri? = null
try {
writer = FileOutputStream(mSendFile)
writer.write(PduComposer(context, sendReq).make())
FileOutputStream(mSendFile).use { writer ->
writer.write(PduComposer(context, sendReq).make())
}
contentUri = writerUri
} catch (e: IOException) {
Log.e(TAG, "Error writing send file", e)
} finally {
if (writer != null) {
try {
writer.close()
} catch (e: IOException) {
}
}
}
val configOverrides = Bundle()