mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-20 06:28:27 +00:00
parent
c6b3bb9f13
commit
dbda758841
@ -760,6 +760,7 @@
|
|||||||
<string name="preferences__custom">Custom</string>
|
<string name="preferences__custom">Custom</string>
|
||||||
<string name="preferences__advanced">Advanced</string>
|
<string name="preferences__advanced">Advanced</string>
|
||||||
<string name="preferences__app_protection">App protection</string>
|
<string name="preferences__app_protection">App protection</string>
|
||||||
|
<string name="preferences__mms_user_agent">MMS User Agent</string>
|
||||||
<string name="preferences__advanced_mms_access_point_names">Manual MMS settings</string>
|
<string name="preferences__advanced_mms_access_point_names">Manual MMS settings</string>
|
||||||
<string name="preferences__enable_manual_mms">Use manual MMS settings</string>
|
<string name="preferences__enable_manual_mms">Use manual MMS settings</string>
|
||||||
<string name="preferences__override_system_mms_settings">Override system MMS settings with the information below.</string>
|
<string name="preferences__override_system_mms_settings">Override system MMS settings with the information below.</string>
|
||||||
|
@ -33,4 +33,10 @@
|
|||||||
android:title="@string/preferences__mmsc_password"
|
android:title="@string/preferences__mmsc_password"
|
||||||
android:inputType="textVisiblePassword"/>
|
android:inputType="textVisiblePassword"/>
|
||||||
|
|
||||||
</PreferenceScreen>
|
<org.thoughtcrime.securesms.components.CustomDefaultPreference
|
||||||
|
app:custom_pref_toggle="pref_custom_mms_user_agent"
|
||||||
|
android:key="pref_mms_user_agent"
|
||||||
|
android:title="@string/preferences__mms_user_agent"
|
||||||
|
android:inputType="textNoSuggestions"/>
|
||||||
|
|
||||||
|
</PreferenceScreen>
|
||||||
|
@ -28,4 +28,4 @@
|
|||||||
<Preference android:key="pref_mms_preferences"
|
<Preference android:key="pref_mms_preferences"
|
||||||
android:title="@string/preferences__advanced_mms_access_point_names"/>
|
android:title="@string/preferences__advanced_mms_access_point_names"/>
|
||||||
|
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@ -39,6 +39,7 @@ import org.apache.http.message.BasicHeader;
|
|||||||
import org.thoughtcrime.securesms.database.ApnDatabase;
|
import org.thoughtcrime.securesms.database.ApnDatabase;
|
||||||
import org.thoughtcrime.securesms.util.TelephonyUtil;
|
import org.thoughtcrime.securesms.util.TelephonyUtil;
|
||||||
import org.thoughtcrime.securesms.util.Conversions;
|
import org.thoughtcrime.securesms.util.Conversions;
|
||||||
|
import org.thoughtcrime.securesms.util.TextSecurePreferences;
|
||||||
import org.thoughtcrime.securesms.util.Util;
|
import org.thoughtcrime.securesms.util.Util;
|
||||||
import org.whispersystems.libaxolotl.util.guava.Optional;
|
import org.whispersystems.libaxolotl.util.guava.Optional;
|
||||||
|
|
||||||
@ -53,6 +54,9 @@ import java.util.List;
|
|||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
public abstract class LegacyMmsConnection {
|
public abstract class LegacyMmsConnection {
|
||||||
|
|
||||||
|
public static final String USER_AGENT = "Android-Mms/2.0";
|
||||||
|
|
||||||
private static final String TAG = "MmsCommunication";
|
private static final String TAG = "MmsCommunication";
|
||||||
|
|
||||||
protected final Context context;
|
protected final Context context;
|
||||||
@ -124,8 +128,7 @@ public abstract class LegacyMmsConnection {
|
|||||||
return baos.toByteArray();
|
return baos.toByteArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected CloseableHttpClient constructHttpClient()
|
protected CloseableHttpClient constructHttpClient() throws IOException {
|
||||||
throws IOException {
|
|
||||||
RequestConfig config = RequestConfig.custom()
|
RequestConfig config = RequestConfig.custom()
|
||||||
.setConnectTimeout(20 * 1000)
|
.setConnectTimeout(20 * 1000)
|
||||||
.setConnectionRequestTimeout(20 * 1000)
|
.setConnectionRequestTimeout(20 * 1000)
|
||||||
@ -133,7 +136,7 @@ public abstract class LegacyMmsConnection {
|
|||||||
.setMaxRedirects(20)
|
.setMaxRedirects(20)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
URL mmsc = new URL(apn.getMmsc());
|
URL mmsc = new URL(apn.getMmsc());
|
||||||
CredentialsProvider credsProvider = new BasicCredentialsProvider();
|
CredentialsProvider credsProvider = new BasicCredentialsProvider();
|
||||||
|
|
||||||
if (apn.hasAuthentication()) {
|
if (apn.hasAuthentication()) {
|
||||||
@ -144,7 +147,7 @@ public abstract class LegacyMmsConnection {
|
|||||||
return HttpClients.custom()
|
return HttpClients.custom()
|
||||||
.setConnectionReuseStrategy(new NoConnectionReuseStrategyHC4())
|
.setConnectionReuseStrategy(new NoConnectionReuseStrategyHC4())
|
||||||
.setRedirectStrategy(new LaxRedirectStrategy())
|
.setRedirectStrategy(new LaxRedirectStrategy())
|
||||||
.setUserAgent("Android-Mms/2.0")
|
.setUserAgent(TextSecurePreferences.getMmsUserAgent(context, USER_AGENT))
|
||||||
.setConnectionManager(new BasicHttpClientConnectionManager())
|
.setConnectionManager(new BasicHttpClientConnectionManager())
|
||||||
.setDefaultRequestConfig(config)
|
.setDefaultRequestConfig(config)
|
||||||
.setDefaultCredentialsProvider(credsProvider)
|
.setDefaultCredentialsProvider(credsProvider)
|
||||||
|
@ -90,6 +90,9 @@ public class MmsPreferencesFragment extends PreferenceFragment {
|
|||||||
|
|
||||||
((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_PASSWORD_PREF))
|
((CustomDefaultPreference)findPreference(TextSecurePreferences.MMSC_PASSWORD_PREF))
|
||||||
.setDefaultValue(apnDefaults.getPassword());
|
.setDefaultValue(apnDefaults.getPassword());
|
||||||
|
|
||||||
|
((CustomDefaultPreference)findPreference(TextSecurePreferences.MMS_USER_AGENT))
|
||||||
|
.setDefaultValue(LegacyMmsConnection.USER_AGENT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,6 +5,8 @@ import android.os.Build;
|
|||||||
import android.preference.PreferenceManager;
|
import android.preference.PreferenceManager;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import org.thoughtcrime.securesms.R;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
public class TextSecurePreferences {
|
public class TextSecurePreferences {
|
||||||
@ -45,6 +47,8 @@ public class TextSecurePreferences {
|
|||||||
private static final String ENTER_SENDS_PREF = "pref_enter_sends";
|
private static final String ENTER_SENDS_PREF = "pref_enter_sends";
|
||||||
private static final String ENTER_PRESENT_PREF = "pref_enter_key";
|
private static final String ENTER_PRESENT_PREF = "pref_enter_key";
|
||||||
private static final String SMS_DELIVERY_REPORT_PREF = "pref_delivery_report_sms";
|
private static final String SMS_DELIVERY_REPORT_PREF = "pref_delivery_report_sms";
|
||||||
|
public static final String MMS_USER_AGENT = "pref_mms_user_agent";
|
||||||
|
private static final String MMS_CUSTOM_USER_AGENT = "pref_custom_mms_user_agent";
|
||||||
private static final String THREAD_TRIM_ENABLED = "pref_trim_threads";
|
private static final String THREAD_TRIM_ENABLED = "pref_trim_threads";
|
||||||
private static final String LOCAL_NUMBER_PREF = "pref_local_number";
|
private static final String LOCAL_NUMBER_PREF = "pref_local_number";
|
||||||
private static final String VERIFYING_STATE_PREF = "pref_verifying";
|
private static final String VERIFYING_STATE_PREF = "pref_verifying";
|
||||||
@ -267,6 +271,13 @@ public class TextSecurePreferences {
|
|||||||
setStringPreference(context, MMSC_PASSWORD_PREF, value);
|
setStringPreference(context, MMSC_PASSWORD_PREF, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String getMmsUserAgent(Context context, String defaultUserAgent) {
|
||||||
|
boolean useCustom = getBooleanPreference(context, MMS_CUSTOM_USER_AGENT, false);
|
||||||
|
|
||||||
|
if (useCustom) return getStringPreference(context, MMS_USER_AGENT, defaultUserAgent);
|
||||||
|
else return defaultUserAgent;
|
||||||
|
}
|
||||||
|
|
||||||
public static String getIdentityContactUri(Context context) {
|
public static String getIdentityContactUri(Context context) {
|
||||||
return getStringPreference(context, IDENTITY_PREF, null);
|
return getStringPreference(context, IDENTITY_PREF, null);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user