SUtility.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package net.indivia.hacklabbo.statusreader;
  2. import java.io.File;
  3. import android.annotation.SuppressLint;
  4. import android.annotation.TargetApi;
  5. import android.content.Context;
  6. import android.content.SharedPreferences;
  7. import android.content.res.Resources;
  8. import android.os.Build;
  9. import android.os.Environment;
  10. import android.util.Log;
  11. public class SUtility {
  12. public static final String LOG_TAG = "SUtility";
  13. @SuppressLint("NewApi")
  14. public static void saveState(Context ctx, Boolean status, String last_refresh, String status_change){
  15. Resources res = ctx.getResources();
  16. //storing
  17. SharedPreferences states = ctx.getApplicationContext().getSharedPreferences(res.getString(R.string.key_states), 0);
  18. SharedPreferences.Editor editor = states.edit();
  19. editor.putBoolean(res.getString(R.string.key_status), status);
  20. editor.putString(res.getString(R.string.key_last_refresh), last_refresh);
  21. editor.putString(res.getString(R.string.key_status_changed), status_change);
  22. if(Build.VERSION.SDK_INT > Build.VERSION_CODES.FROYO){
  23. editor.apply();
  24. } else {
  25. commitShared(editor);
  26. }
  27. }
  28. @TargetApi(Build.VERSION_CODES.FROYO)
  29. private static void commitShared(SharedPreferences.Editor editor){
  30. editor.commit();
  31. }
  32. public static File getFile(String url, String reldir) {
  33. final String ADIR = "/StatusReader/" ;
  34. File file, apath;
  35. String[] fileUrlParts = url.split("/");
  36. apath = new File(Environment.getExternalStorageDirectory()+ ADIR + reldir);
  37. if (! apath.exists()){
  38. apath.mkdirs();
  39. }
  40. file = new File(apath.toString()+ "/" + fileUrlParts[fileUrlParts.length-1]);
  41. Log.d(LOG_TAG,"external storage state:"+Environment.getExternalStorageState());
  42. return file;
  43. }
  44. }