Added setting for Java logger

This commit is contained in:
Sylvain Berfini 2018-04-06 14:32:24 +02:00
parent 977ff5e92e
commit 86a9a9b74c
6 changed files with 28 additions and 1 deletions

View file

@ -58,6 +58,7 @@
<string name="pref_wizard_key">pref_wizard_key</string>
<string name="pref_activated_key">pref_activated_key</string>
<string name="pref_debug_key">pref_debug_key</string>
<string name="pref_java_debug_key">pref_java_debug_key</string>
<string name="first_launch_succeeded_once_key">first_launch_succeeded_once_key</string>
<string name="pref_wifi_only_key">pref_wifi_only_key</string>

View file

@ -426,6 +426,7 @@
<string name="pref_advanced_title">Advanced</string>
<string name="pref_debug_title">Debug</string>
<string name="pref_debug">Debug</string>
<string name="pref_java_debug">Use Java logger</string>
<string name="pref_friendlist_subscribe">Friendlist subscribe</string>
<string name="pref_background_mode">Background mode</string>
<string name="pref_animation_enable_title">Enable Animations</string>

View file

@ -354,6 +354,11 @@
android:key="@string/pref_debug_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_java_debug"
android:key="@string/pref_java_debug_key"
android:persistent="false"/>
</PreferenceCategory>
<PreferenceCategory

View file

@ -1199,6 +1199,15 @@ public class LinphonePreferences {
return getConfig().getBool("app", "debug", false);
}
public void setJavaLogger(boolean enabled) {
getConfig().setBool("app", "java_logger", enabled);
LinphoneUtils.initLoggingService(isDebugEnabled(), mContext.getString(R.string.app_name));
}
public boolean useJavaLogger() {
return getConfig().getBool("app", "java_logger", false);
}
public void setBackgroundModeEnabled(boolean enabled) {
getConfig().setBool("app", "background_mode", enabled);
}

View file

@ -103,7 +103,7 @@ public final class LinphoneUtils {
}
public static void initLoggingService(boolean isDebugEnabled, String appName) {
if (true) {
if (!LinphonePreferences.instance().useJavaLogger()) {
Factory.instance().enableLogCollection(LogCollectionState.Enabled);
Factory.instance().setDebugMode(isDebugEnabled, appName);
} else {

View file

@ -221,6 +221,7 @@ public class SettingsFragment extends PreferencesListFragment {
if (getResources().getBoolean(R.bool.disable_every_log)) {
uncheckAndHidePreference(R.string.pref_debug_key);
uncheckAndHidePreference(R.string.pref_java_debug_key);
}
if (!LinphoneManager.getLc().upnpAvailable()) {
@ -1267,6 +1268,7 @@ public class SettingsFragment extends PreferencesListFragment {
private void initAdvancedSettings() {
((CheckBoxPreference)findPreference(getString(R.string.pref_friendlist_subscribe_key))).setChecked(mPrefs.isFriendlistsubscriptionEnabled());
((CheckBoxPreference)findPreference(getString(R.string.pref_debug_key))).setChecked(mPrefs.isDebugEnabled());
((CheckBoxPreference)findPreference(getString(R.string.pref_java_debug_key))).setChecked(mPrefs.useJavaLogger());
((CheckBoxPreference)findPreference(getString(R.string.pref_background_mode_key))).setChecked(mPrefs.isBackgroundModeEnabled());
((CheckBoxPreference)findPreference(getString(R.string.pref_service_notification_key))).setChecked(mPrefs.getServiceNotificationVisibility());
((CheckBoxPreference)findPreference(getString(R.string.pref_autostart_key))).setChecked(mPrefs.isAutoStartEnabled());
@ -1296,6 +1298,15 @@ public class SettingsFragment extends PreferencesListFragment {
}
});
findPreference(getString(R.string.pref_java_debug_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
boolean value = (Boolean) newValue;
mPrefs.setJavaLogger(value);
return true;
}
});
findPreference(getString(R.string.pref_background_mode_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {