Good day, I making native background mod for Cordova and I need get data from js to java. I save data in js with plugin cordova-plugin-nativestorage, with this code:
I've made a change, so you should conveniently access the saved value.
Please, first reinstall the plugin:
cordova plugin remove cordova-plugin-nativestorage
cordova plugin add https://github.com/TheCocoaProject/cordova-plugin-nativestorage
This will install the dev version. This because this updated code isn't pushed to NPM (UPDATE: it is now not necessary to use the dev version, the version on NPM is just fine).
For retrieving the value with a key, I've written the following method:
String getValue(Context context, String key, String defaultValue) {
SharedPreferences settings = context.getSharedPreferences(PREFS_NAME, Activity.MODE_PRIVATE);
return settings.getString(key, defaultValue);
}
The PREFS_NAME
should be declared as follows:
public static final String PREFS_NAME = "NativeStorage";
The context should be this
accessable within the onCreate
method.
So overall it should look something like this:
public class Backgroundoznameni extends Service {
public static final String PREFS_NAME = "NativeStorage";
@Override
public void onCreate() {
String value = getValue(Backgroundoznameni.this, "somekey", null);
}
String getValue(Context context, String key, String defaultValue) {
SharedPreferences settings = context.getSharedPreferences(PREFS_NAME, Activity.MODE_PRIVATE);
return settings.getString(key, defaultValue);
}
}
NOTE: Code not tested!
EDIT: This is further documented in this Github issue.