I finally found a solution that works 100%. See the github project https://github.com/klinker41/android-smsmms . (Anyone who finds this helpful, please donate to the author http://forum.xda-developers.com/showthread.php?t=2222703 ).
Please note that the required settings are only
Settings sendSettings = new Settings(); sendSettings.setMmsc(mmsc); sendSettings.setProxy(proxy); sendSettings.setPort(port);
you can get something like (found in APN software application on Android - answer from 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));
source share