ciao ragazzi,
e' da poco disponibile una libreria opensource per la gestione della messaggistica, nel caso in cui vogliate creare una vostra app
l'utilizzo e' molto semplice:
basterà creare un oggetto Settings contenente le impostazioni che vorremo implementare. Ovviamente, se alcuni campi li lasceremo vuoti, oppure li ometteremo, la libreria provvederà autonomamente ad utilizzare i valori di default:
una volta impostati bastera' allegare le impostazioni al sender:codice:1Settings sendSettings = new Settings();
2
3sendSettings.setMmsc("http://mmsc.cingular.com");
4sendSettings.setProxy("66.209.11.33");
5sendSettings.setPort("80");
6sendSettings.setGroup(true);
7sendSettings.setWifiMmsFix(true);
8sendSettings.setPreferVoice(false);
9sendSettings.setDeliveryReports(false);
10sendSettings.setSplit(false);
11sendSettings.setSplitCounter(false);
12sendSettings.setStripUnicode(false);
13sendSettings.setSignature("");
14sendSettings.setSendLongAsMms(true);
15sendSettings.setSendLongAsMmsAfter(3);
16sendSettings.setAccount("jklinker1@gmail.com");
17sendSettings.setRnrSe(null);
18
creare il messaggio:codice:11Transaction sendTransaction = new Transaction(mContext, sendSettings);
e inviarlo fisicamente al destinatariocodice:21Message mMessage = new Message(textToSend, addressToSendTo);
2mMessage.setImage(mBitmap);
NOTA: threadId puo' anche essere null, ma in questo caso l'app creerà un nuovo thread per ogni messaggio invece che raggrupparli sotto ogni destinatariocodice:11sendTransaction.sendNewMessage(message, threadId)
Vanno inoltre aggiunti alcuni receivers nel manifest e alcuni permessi:
codice:111<receiver android:name="com.klinker.android.send_message.SentReceiver" >
2<intent-filter>
3<action android:name="com.klinker.android.send_message.SMS_SENT" />
4</intent-filter>
5</receiver>
6
7<receiver android:name="com.klinker.android.send_message.DeliveredReceiver" >
8<intent-filter>
9<action android:name="com.klinker.android.send_message.SMS_DELIVERED" />
10</intent-filter>
11</receiver>
i sorgenti sono tutti su GitHub: https://github.com/klinker41/android-smsmmscodice:151<uses-permission android:name="android.permission.SEND_SMS"/>
2<uses-permission android:name="android.permission.READ_SMS" />
3<uses-permission android:name="android.permission.WRITE_SMS"/>
4<uses-permission android:name="android.permission.RECEIVE_SMS"/>
5<uses-permission android:name="android.permission.RECEIVE_MMS"/>
6<uses-permission android:name="android.permission.VIBRATE"/>
7<uses-permission android:name="android.provider.Telephony.SMS_RECEIVED" />
8<uses-permission android:name="android.permission.INTERNET" />
9<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
10<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
11<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
12<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
13<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
14<uses-permission android:name="android.permission.USE_CREDENTIALS" />
15<uses-permission android:name="android.permission.GET_ACCOUNTS" />
e c'e' pure il thread originale su XDA: [LIBRARY] Android SMS and MMS library - xda-developers
![]()