diff options
| -rw-r--r-- | altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java | 16 | ||||
| -rw-r--r-- | altoslib/AltosPreferencesBackend.java | 3 | ||||
| -rw-r--r-- | altosuilib/AltosUIPreferencesBackend.java | 8 | 
3 files changed, 27 insertions, 0 deletions
| diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java index be41ae7c..09a2a7a2 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroidPreferencesBackend.java @@ -22,6 +22,7 @@ import java.util.Map;  import android.content.Context;  import android.content.SharedPreferences;  import android.os.Environment; +import android.util.*;  import org.altusmetrum.altoslib_5.*; @@ -71,6 +72,16 @@ public class AltosDroidPreferencesBackend implements AltosPreferencesBackend {  		return prefs.getString(key, def);  	} +	public byte[] getBytes(String key, byte[] def) { +		String save = prefs.getString(key, null); + +		if (save == null) +			return def; + +		byte[] bytes = Base64.decode(save, Base64.DEFAULT); +		return bytes; +	} +  	public void putBoolean(String key, boolean value) {  		editor.putBoolean(key, value);  	} @@ -87,6 +98,11 @@ public class AltosDroidPreferencesBackend implements AltosPreferencesBackend {  		editor.putString(key, value);  	} +	public void putBytes(String key, byte[] bytes) { +		String save = Base64.encodeToString(bytes, Base64.DEFAULT); +		editor.putString(key, save); +	} +  	public void remove(String key) {  		editor.remove(key);  	} diff --git a/altoslib/AltosPreferencesBackend.java b/altoslib/AltosPreferencesBackend.java index 76a99acb..9bb4c99b 100644 --- a/altoslib/AltosPreferencesBackend.java +++ b/altoslib/AltosPreferencesBackend.java @@ -33,6 +33,9 @@ public interface AltosPreferencesBackend {  	public boolean getBoolean(String key, boolean def);  	public void    putBoolean(String key, boolean value); +	public byte[]  getBytes(String key, byte[] def); +	public void    putBytes(String key, byte[] value); +  	public boolean nodeExists(String key);  	public AltosPreferencesBackend node(String key); diff --git a/altosuilib/AltosUIPreferencesBackend.java b/altosuilib/AltosUIPreferencesBackend.java index 4048fd83..8d4431f1 100644 --- a/altosuilib/AltosUIPreferencesBackend.java +++ b/altosuilib/AltosUIPreferencesBackend.java @@ -62,6 +62,14 @@ public class AltosUIPreferencesBackend implements AltosPreferencesBackend {  		_preferences.putBoolean(key, value);  	} +	public byte[] getBytes(String key, byte[] def) { +		return _preferences.getByteArray(key, def); +	} + +	public void putBytes(String key, byte[] value) { +		_preferences.putByteArray(key, value); +	} +  	public boolean nodeExists(String key) {  		try {  			return _preferences.nodeExists(key); | 
