Enviar MMS mediante programación
Quiero enviar un MMS mediante programación He utilizado el siguiente código para ello
Intent sendIntent1 = new Intent(Intent.ACTION_SEND); try { sendIntent1.setType("text/x-vcard"); sendIntent1.putExtra("address","0475223091"); sendIntent1.putExtra("sms_body","hello.."); sendIntent1.putExtra(Intent.EXTRA_STREAM, Uri.parse(vcfFile.toURL().toString())); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } startActivity(sendIntent1);
El problema es dirigir a la página de mensaje de componer y requiere enviar manualmente el SMS y no quiero tan sin ninguna notificación que debe enviar ¿Cómo puedo hacerlo ??
- SDK de Android MMS
- Envío de un MMS con un archivo adjunto de vCard en dispositivos Android
- Diferenciar MMS y SMS a través de los oyentes MMS / SMS en Android
- No se puede conectar MongoDB en la instancia de Amazon EC2 usando java
- La consulta MMS sólo devuelve el tamaño del mensaje de los archivos adjuntos enviados
SomeBody por favor compartame la respuesta
- Cómo leer datos MMS en Android?
- Teclado personalizado de Android para enviar imágenes
- Guardar / Crear MMS en la bandeja de entrada de Android
- Android: qué hacer con el tipo de aplicación / smil MIME
- Cómo enviar un MMS mediante programación?
- Android agrega MMS a base de datos
- Cómo transmitir a través de mms: //
- Enviar MMS desde Mi aplicación en android
Finalmente encontré una solución que funciona al 100%. Consulte el proyecto github https://github.com/klinker41/android-smsmms . (Cualquier persona que lo encuentre útil, por favor done al autor http://forum.xda-developers.com/showthread.php?t=2222703 ).
Tenga en cuenta que los ajustes obligatorios
Settings sendSettings = new Settings(); sendSettings.setMmsc(mmsc); sendSettings.setProxy(proxy); sendSettings.setPort(port);
Usted puede conseguir algo como (que se encuentra en Set APN de forma programática en Android – answear por vincent091):
Cursor cursor = null; if (Utils.hasICS()){ cursor =SqliteWrapper.query(activity, activity.getContentResolver(), Uri.withAppendedPath(Carriers.CONTENT_URI, "current"), APN_PROJECTION, null, null, null); } else { cursor = activity.getContentResolver().query(Uri.withAppendedPath(Telephony.Carriers.CONTENT_URI, "current"), null, null, null, null); } cursor.moveToLast(); String type = cursor.getString(cursor.getColumnIndex(Telephony.Carriers.TYPE)); String mmsc = cursor.getString(cursor.getColumnIndex(Telephony.Carriers.MMSC)); String proxy = cursor.getString(cursor.getColumnIndex(Telephony.Carriers.MMSPROXY)); String port = cursor.getString(cursor.getColumnIndex(Telephony.Carriers.MMSPORT));
MMS es una solicitud basada en HTTP en Android. Tienes que tener datos móviles para enviar un MMS. No hay APIs expuestas por Android para enviar un MMS, ya que tienen API para SMS. Si desea que su aplicación envíe MMS, tendrá que escribir todo. Consulte el código AOSP. https://github.com/android/platform_packages_apps_mms O simplemente puede crear el Intent y luego lanzar la aplicación nativa Messaging.
De esta manera se puede mms directamente, Al dar el móvil No y Subject.And adjuntar la imagen.
Uri uri = Uri.parse("file://"+Environment.getExternalStorageDirectory()+"/test.png"); Intent i = new Intent(Intent.ACTION_SEND); i.putExtra("address","1234567890"); i.putExtra("sms_body","This is the text mms"); i.putExtra(Intent.EXTRA_STREAM,"file:/"+uri); i.setType("image/png"); startActivity(i);
- Android webview error Página no encontrada
- RxJava comparte las emisiones de un Observable entre múltiples suscriptores