mirror of
https://github.com/cwinfo/envayasms.git
synced 2024-11-09 10:20:25 +00:00
fix bug where outgoing sms would be cut off if they contain xml entities
This commit is contained in:
parent
6384942c57
commit
986b50f0a8
@ -1,8 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="org.envaya.sms"
|
package="org.envaya.sms"
|
||||||
android:versionCode="7"
|
android:versionCode="8"
|
||||||
android:versionName="2.0-beta 5">
|
android:versionName="2.0-beta6">
|
||||||
|
|
||||||
<uses-sdk android:minSdkVersion="4" />
|
<uses-sdk android:minSdkVersion="4" />
|
||||||
|
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
android:id="@+id/help"
|
android:id="@+id/help"
|
||||||
|
android:textSize="16sp"
|
||||||
|
android:autoLink="web"
|
||||||
android:textColor="#FFFFFF"
|
android:textColor="#FFFFFF"
|
||||||
android:layout_margin="5px">
|
android:layout_margin="5px">
|
||||||
</TextView>
|
</TextView>
|
||||||
|
@ -78,7 +78,9 @@ public final class App extends Application {
|
|||||||
public static final String STATUS_EXTRA_NUM_PARTS = "num_parts";
|
public static final String STATUS_EXTRA_NUM_PARTS = "num_parts";
|
||||||
|
|
||||||
public static final int MAX_DISPLAYED_LOG = 4000;
|
public static final int MAX_DISPLAYED_LOG = 4000;
|
||||||
public static final int LOG_TIMESTAMP_INTERVAL = 60000;
|
public static final int LOG_TIMESTAMP_INTERVAL = 60000; // ms
|
||||||
|
|
||||||
|
public static final int HTTP_CONNECTION_TIMEOUT = 10000; // ms
|
||||||
|
|
||||||
// Each QueuedMessage is identified within our internal Map by its Uri.
|
// Each QueuedMessage is identified within our internal Map by its Uri.
|
||||||
// Currently QueuedMessage instances are only available within EnvayaSMS,
|
// Currently QueuedMessage instances are only available within EnvayaSMS,
|
||||||
@ -690,8 +692,8 @@ public final class App extends Application {
|
|||||||
public HttpParams getDefaultHttpParams()
|
public HttpParams getDefaultHttpParams()
|
||||||
{
|
{
|
||||||
HttpParams httpParams = new BasicHttpParams();
|
HttpParams httpParams = new BasicHttpParams();
|
||||||
HttpConnectionParams.setConnectionTimeout(httpParams, 8000);
|
HttpConnectionParams.setConnectionTimeout(httpParams, HTTP_CONNECTION_TIMEOUT);
|
||||||
HttpConnectionParams.setSoTimeout(httpParams, 8000);
|
HttpConnectionParams.setSoTimeout(httpParams, HTTP_CONNECTION_TIMEOUT);
|
||||||
HttpProtocolParams.setContentCharset(httpParams, "UTF-8");
|
HttpProtocolParams.setContentCharset(httpParams, "UTF-8");
|
||||||
return httpParams;
|
return httpParams;
|
||||||
}
|
}
|
||||||
|
@ -6,14 +6,11 @@ import android.content.Intent;
|
|||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.telephony.SmsMessage;
|
import android.telephony.SmsMessage;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import org.envaya.sms.App;
|
import org.envaya.sms.App;
|
||||||
import org.envaya.sms.IncomingMessage;
|
import org.envaya.sms.IncomingMessage;
|
||||||
import org.envaya.sms.IncomingSms;
|
import org.envaya.sms.IncomingSms;
|
||||||
|
|
||||||
|
|
||||||
public class SmsReceiver extends BroadcastReceiver {
|
public class SmsReceiver extends BroadcastReceiver {
|
||||||
|
|
||||||
private App app;
|
private App app;
|
||||||
|
@ -20,17 +20,13 @@ import javax.xml.parsers.DocumentBuilder;
|
|||||||
import javax.xml.parsers.DocumentBuilderFactory;
|
import javax.xml.parsers.DocumentBuilderFactory;
|
||||||
import javax.xml.parsers.ParserConfigurationException;
|
import javax.xml.parsers.ParserConfigurationException;
|
||||||
import org.apache.http.HttpResponse;
|
import org.apache.http.HttpResponse;
|
||||||
import org.apache.http.HttpVersion;
|
|
||||||
import org.apache.http.client.HttpClient;
|
import org.apache.http.client.HttpClient;
|
||||||
import org.apache.http.client.entity.UrlEncodedFormEntity;
|
import org.apache.http.client.entity.UrlEncodedFormEntity;
|
||||||
import org.apache.http.client.methods.HttpPost;
|
import org.apache.http.client.methods.HttpPost;
|
||||||
import org.apache.http.entity.mime.FormBodyPart;
|
import org.apache.http.entity.mime.FormBodyPart;
|
||||||
import org.apache.http.entity.mime.MultipartEntity;
|
import org.apache.http.entity.mime.MultipartEntity;
|
||||||
import org.apache.http.entity.mime.content.StringBody;
|
import org.apache.http.entity.mime.content.StringBody;
|
||||||
import org.apache.http.impl.client.DefaultHttpClient;
|
|
||||||
import org.apache.http.message.BasicNameValuePair;
|
import org.apache.http.message.BasicNameValuePair;
|
||||||
import org.apache.http.params.HttpParams;
|
|
||||||
import org.apache.http.params.HttpProtocolParams;
|
|
||||||
import org.envaya.sms.App;
|
import org.envaya.sms.App;
|
||||||
import org.envaya.sms.Base64Coder;
|
import org.envaya.sms.Base64Coder;
|
||||||
import org.envaya.sms.OutgoingMessage;
|
import org.envaya.sms.OutgoingMessage;
|
||||||
@ -202,8 +198,15 @@ public class HttpTask extends AsyncTask<String, Void, HttpResponse> {
|
|||||||
|
|
||||||
sms.setServerId(serverId.equals("") ? null : serverId);
|
sms.setServerId(serverId.equals("") ? null : serverId);
|
||||||
|
|
||||||
Node firstChild = smsElement.getFirstChild();
|
StringBuilder messageBody = new StringBuilder();
|
||||||
sms.setMessageBody(firstChild != null ? firstChild.getNodeValue(): "");
|
NodeList childNodes = smsElement.getChildNodes();
|
||||||
|
int numChildren = childNodes.getLength();
|
||||||
|
for (int j = 0; j < numChildren; j++)
|
||||||
|
{
|
||||||
|
messageBody.append(childNodes.item(j).getNodeValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
sms.setMessageBody(messageBody.toString());
|
||||||
|
|
||||||
messages.add(sms);
|
messages.add(sms);
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ public class Help extends Activity {
|
|||||||
+ "EnvayaSMS is a SMS gateway.<br /><br /> "
|
+ "EnvayaSMS is a SMS gateway.<br /><br /> "
|
||||||
+ "It forwards all incoming SMS messages received by this phone to a server on the internet, "
|
+ "It forwards all incoming SMS messages received by this phone to a server on the internet, "
|
||||||
+ "and also sends outgoing SMS messages from that server to other phones.<br /><br />"
|
+ "and also sends outgoing SMS messages from that server to other phones.<br /><br />"
|
||||||
+ "See http://sms.envaya.org/ for more information.<br /><br />"
|
+ "See sms.envaya.org for more information.<br /><br />"
|
||||||
+ "The Settings screen allows you configure EnvayaSMS to work with a particular server, "
|
+ "The Settings screen allows you configure EnvayaSMS to work with a particular server, "
|
||||||
+ "by entering the server URL, your phone number, "
|
+ "by entering the server URL, your phone number, "
|
||||||
+ "and the password assigned to your phone on the server.<br /><br />"
|
+ "and the password assigned to your phone on the server.<br /><br />"
|
||||||
|
Loading…
Reference in New Issue
Block a user