Android Open Source - rfcx-guardian-android Device Guid






From Project

Back to project page rfcx-guardian-android.

License

The source code is released under:

Apache License

If you think the Android project rfcx-guardian-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package org.rfcx.guardian.utility;
/* w  w w. ja  v  a 2s.c  om*/
import android.content.Context;
import android.content.SharedPreferences;
import android.text.TextUtils;
import android.util.Log;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.UUID;

public class DeviceGuid {
  
  private static final String TAG = DeviceGuid.class.getSimpleName();
  private static final String NULL_EXC = "Exception thrown, but exception itself is null.";
  protected static final String PREFS_DEVICE_GUID = "device_guid";
    protected static String deviceGuid;

    public DeviceGuid(Context context, SharedPreferences prefs) {
        if (deviceGuid == null) {
            synchronized (DeviceGuid.class) {
                if (deviceGuid == null) {
                  final String prefsDeviceGuid = prefs.getString(PREFS_DEVICE_GUID,null);
                    if ((prefsDeviceGuid != null) && (prefsDeviceGuid.length() > 10)) {
                        deviceGuid = prefsDeviceGuid;
                    } else{
                      deviceGuid = getExistingGuidFromUpdaterApp(context);
                      if (deviceGuid == null) { 
                        String randomUuid = (UUID.randomUUID()).toString();
                        deviceGuid = randomUuid.substring(1+randomUuid.lastIndexOf("-"));
                      }
                      prefs.edit().putString(PREFS_DEVICE_GUID, deviceGuid).commit();
                    }
                }
            }
        }
    }


    public String getDeviceId() {
        return deviceGuid;
    }
    
    private static String getExistingGuidFromUpdaterApp(Context context) {
      try {
        String mainAppPath = context.getFilesDir().getAbsolutePath();
        Log.d(TAG,mainAppPath.substring(0,mainAppPath.lastIndexOf("/files"))+".updater/files/device_guid.txt;");
        File guidFile = new File(mainAppPath.substring(0,mainAppPath.lastIndexOf("/files"))+".updater/files","device_guid.txt");
        if (guidFile.exists()) {
        FileInputStream input = new FileInputStream(guidFile);
        StringBuffer fileContent = new StringBuffer("");
        byte[] buffer = new byte[12];
        while (input.read(buffer) != -1) {
            fileContent.append(new String(buffer));
        }
          String guidString = fileContent.toString();
          input.close();
          Log.d(TAG, "Fetched GUID from RfcxGuardianUpdater: "+guidString);
          return guidString;
        } else {
          Log.e(TAG, "No previous GUID saved by RfcxGuardianUpdater...");
        }
      } catch (FileNotFoundException e) {
        Log.e(TAG,(e!=null) ? (e.getMessage() +" ||| "+ TextUtils.join(" | ", e.getStackTrace())) : NULL_EXC);
      } catch (IOException e) {
        Log.e(TAG,(e!=null) ? (e.getMessage() +" ||| "+ TextUtils.join(" | ", e.getStackTrace())) : NULL_EXC);
    }
      return null;
    }
}




Java Source Code List

net.sourceforge.javaFlacEncoder.ArrayRecycler.java
net.sourceforge.javaFlacEncoder.BlockEncodeRequest.java
net.sourceforge.javaFlacEncoder.BlockThreadManager.java
net.sourceforge.javaFlacEncoder.CRC16.java
net.sourceforge.javaFlacEncoder.CRC8.java
net.sourceforge.javaFlacEncoder.ChannelData.java
net.sourceforge.javaFlacEncoder.EncodedElement_32.java
net.sourceforge.javaFlacEncoder.EncodedElement.java
net.sourceforge.javaFlacEncoder.EncodingConfiguration.java
net.sourceforge.javaFlacEncoder.FLACEncoder.java
net.sourceforge.javaFlacEncoder.FLACFileOutputStream.java
net.sourceforge.javaFlacEncoder.FLACOutputStream.java
net.sourceforge.javaFlacEncoder.FLACStreamController.java
net.sourceforge.javaFlacEncoder.FLACStreamIdentifier.java
net.sourceforge.javaFlacEncoder.FLACStreamOutputStream.java
net.sourceforge.javaFlacEncoder.FLAC_ConsoleFileEncoder.java
net.sourceforge.javaFlacEncoder.FLAC_FileEncoder.java
net.sourceforge.javaFlacEncoder.FLAC_MD5.java
net.sourceforge.javaFlacEncoder.FrameHeader.java
net.sourceforge.javaFlacEncoder.FrameThread.java
net.sourceforge.javaFlacEncoder.Frame.java
net.sourceforge.javaFlacEncoder.LPC.java
net.sourceforge.javaFlacEncoder.MetadataBlockHeader.java
net.sourceforge.javaFlacEncoder.MetadataBlockStreamInfo.java
net.sourceforge.javaFlacEncoder.RiceEncoder.java
net.sourceforge.javaFlacEncoder.StreamConfiguration.java
net.sourceforge.javaFlacEncoder.Subframe_Constant.java
net.sourceforge.javaFlacEncoder.Subframe_Fixed.java
net.sourceforge.javaFlacEncoder.Subframe_LPC.java
net.sourceforge.javaFlacEncoder.Subframe_Verbatim.java
net.sourceforge.javaFlacEncoder.Subframe.java
net.sourceforge.javaFlacEncoder.UTF8Modified.java
org.rfcx.guardian.RfcxGuardianPrefs.java
org.rfcx.guardian.RfcxGuardian.java
org.rfcx.guardian.activity.MainActivity.java
org.rfcx.guardian.activity.PrefsActivity.java
org.rfcx.guardian.api.ApiCore.java
org.rfcx.guardian.audio.AudioCore.java
org.rfcx.guardian.database.AlertDb.java
org.rfcx.guardian.database.AudioDb.java
org.rfcx.guardian.database.DeviceStateDb.java
org.rfcx.guardian.database.SmsDb.java
org.rfcx.guardian.device.AirplaneMode.java
org.rfcx.guardian.device.CpuUsage.java
org.rfcx.guardian.device.DeviceState.java
org.rfcx.guardian.intentservice.ApiCheckInTriggerIntentService.java
org.rfcx.guardian.intentservice.AudioEncodeIntentService.java
org.rfcx.guardian.intentservice.ServiceMonitorIntentService.java
org.rfcx.guardian.receiver.AirplaneModeReceiver.java
org.rfcx.guardian.receiver.BootReceiver.java
org.rfcx.guardian.receiver.ConnectivityReceiver.java
org.rfcx.guardian.receiver.SmsReceiver.java
org.rfcx.guardian.service.ApiCheckInService.java
org.rfcx.guardian.service.AudioCaptureService.java
org.rfcx.guardian.service.CarrierCodeService.java
org.rfcx.guardian.service.DeviceStateService.java
org.rfcx.guardian.telecom.CarrierInteraction.java
org.rfcx.guardian.utility.DateTimeUtils.java
org.rfcx.guardian.utility.DeviceGuid.java
org.rfcx.guardian.utility.ExtAudioRecorderModified.java
org.rfcx.guardian.utility.FileUtils.java
org.rfcx.guardian.utility.HttpGet.java
org.rfcx.guardian.utility.HttpPostMultipart.java
org.rfcx.guardian.utility.TimeOfDay.java