summaryrefslogtreecommitdiff
path: root/navit/android/src/org/navitproject/navit/NavitAppConfig.java
diff options
context:
space:
mode:
Diffstat (limited to 'navit/android/src/org/navitproject/navit/NavitAppConfig.java')
-rwxr-xr-xnavit/android/src/org/navitproject/navit/NavitAppConfig.java56
1 files changed, 41 insertions, 15 deletions
diff --git a/navit/android/src/org/navitproject/navit/NavitAppConfig.java b/navit/android/src/org/navitproject/navit/NavitAppConfig.java
index 22c310f70..322fcc9c7 100755
--- a/navit/android/src/org/navitproject/navit/NavitAppConfig.java
+++ b/navit/android/src/org/navitproject/navit/NavitAppConfig.java
@@ -2,6 +2,7 @@ package org.navitproject.navit;
import android.app.Application;
import android.content.SharedPreferences;
+import android.content.res.Resources;
import java.util.ArrayList;
import java.util.List;
@@ -10,34 +11,36 @@ import org.navitproject.navit.NavitAddressSearchActivity.NavitAddress;
public class NavitAppConfig extends Application {
+ public static final String NAVIT_PREFS = "NavitPrefs";
private static final int MAX_LAST_ADDRESSES = 10;
- private static final String TAG = "Navit";
-
- private List<NavitAddress> mLastAddresses = null;
+ static Resources sResources;
+ private List<NavitAddress> mLastAddresses = null;
private int mLastAddressField;
private SharedPreferences mSettings;
+
@Override
public void onCreate() {
- mSettings = getSharedPreferences(Navit.NAVIT_PREFS, MODE_PRIVATE);
super.onCreate();
+ mSettings = getSharedPreferences(NAVIT_PREFS, MODE_PRIVATE);
+ sResources = getResources();
}
- public List<NavitAddress> getLastAddresses() {
+ List<NavitAddress> getLastAddresses() {
if (mLastAddresses == null) {
- mLastAddresses = new ArrayList<NavitAddress>();
+ mLastAddresses = new ArrayList<>();
int mLastAddressField = mSettings.getInt("LastAddress", -1);
if (mLastAddressField >= 0) {
int index = mLastAddressField;
do {
- String addr_str = mSettings.getString("LastAddress_" + String.valueOf(index), "");
+ String addrStr = mSettings.getString("LastAddress_" + index, "");
- if (addr_str.length() > 0) {
+ if (addrStr.length() > 0) {
mLastAddresses.add(new NavitAddress(
1,
- mSettings.getFloat("LastAddress_Lat_" + String.valueOf(index), 0),
- mSettings.getFloat("LastAddress_Lon_" + String.valueOf(index), 0),
- addr_str));
+ mSettings.getFloat("LastAddress_Lat_" + index, 0),
+ mSettings.getFloat("LastAddress_Lon_" + index, 0),
+ addrStr));
}
if (--index < 0) {
@@ -50,7 +53,7 @@ public class NavitAppConfig extends Application {
return mLastAddresses;
}
- public void addLastAddress(NavitAddress newAddress) {
+ void addLastAddress(NavitAddress newAddress) {
getLastAddresses();
mLastAddresses.add(newAddress);
@@ -66,10 +69,33 @@ public class NavitAppConfig extends Application {
SharedPreferences.Editor editSettings = mSettings.edit();
editSettings.putInt("LastAddress", mLastAddressField);
- editSettings.putString("LastAddress_" + String.valueOf(mLastAddressField), newAddress.addr);
- editSettings.putFloat("LastAddress_Lat_" + String.valueOf(mLastAddressField), newAddress.lat);
- editSettings.putFloat("LastAddress_Lon_" + String.valueOf(mLastAddressField), newAddress.lon);
+ editSettings.putString("LastAddress_" + mLastAddressField, newAddress.mAddr);
+ editSettings.putFloat("LastAddress_Lat_" + mLastAddressField, newAddress.mLat);
+ editSettings.putFloat("LastAddress_Lon_" + mLastAddressField, newAddress.mLon);
editSettings.apply();
}
+
+ /**
+ * Translates a string from its id
+ * in R.strings
+ *
+ * @param riD resource identifier
+ * @return translated string
+ */
+ static String getTstring(int riD) {
+
+ return callbackLocalizedString(sResources.getString(riD));
+ }
+
+ static native String callbackLocalizedString(String s);
+
+ /*
+ * this is used to load the 'navit' native library on
+ * application startup. The library has already been unpacked at
+ * installation time by the package manager.
+ */
+ static {
+ System.loadLibrary("navit");
+ }
}