Example usage for android.os Build MODEL

List of usage examples for android.os Build MODEL

Introduction

In this page you can find the example usage for android.os Build MODEL.

Prototype

String MODEL

To view the source code for android.os Build MODEL.

Click Source Link

Document

The end-user-visible name for the end product.

Usage

From source file:Main.java

/**
 * @return True if this application is being run on
 * the Android emulator (or a device who reports its
 * build information as an emulator).//w w w . ja  v a 2s .  com
 */
public static final boolean isEmulator() {
    if (Build.MODEL == null)
        return false;
    return (Build.MODEL.equals("sdk") || Build.MODEL.equals("google_sdk"));
}

From source file:Main.java

/**
 * Return pseudo unique ID//from  ww  w .jav  a 2  s.c o m
 * @return ID
 */
public static String getUniquePsuedoID() {
    // If all else fails, if the user does have lower than API 9 (lower
    // than Gingerbread), has reset their phone or 'Secure.ANDROID_ID'
    // returns 'null', then simply the ID returned will be solely based
    // off their Android device information. This is where the collisions
    // can happen.
    // Thanks http://www.pocketmagic.net/?p=1662!
    // Try not to use DISPLAY, HOST or ID - these items could change.
    // If there are collisions, there will be overlapping data
    String m_szDevIDShort = "35" + (Build.BOARD.length() % 10) + (Build.BRAND.length() % 10)
            + (Build.CPU_ABI.length() % 10) + (Build.DEVICE.length() % 10) + (Build.MANUFACTURER.length() % 10)
            + (Build.MODEL.length() % 10) + (Build.PRODUCT.length() % 10);

    // Thanks to @Roman SL!
    // http://stackoverflow.com/a/4789483/950427
    // Only devices with API >= 9 have android.os.Build.SERIAL
    // http://developer.android.com/reference/android/os/Build.html#SERIAL
    // If a user upgrades software or roots their phone, there will be a duplicate entry
    String serial = null;
    try {
        serial = android.os.Build.class.getField("SERIAL").get(null).toString();

        // Go ahead and return the serial for api => 9
        return new UUID(m_szDevIDShort.hashCode(), serial.hashCode()).toString();
    } catch (Exception e) {
        // String needs to be initialized
        serial = "serial"; // some value
    }

    // Thanks @Joe!
    // http://stackoverflow.com/a/2853253/950427
    // Finally, combine the values we have found by using the UUID class to create a unique identifier
    return new UUID(m_szDevIDShort.hashCode(), serial.hashCode()).toString();
}

From source file:Main.java

/**
 * Test if the app is running under inside an emulator
 * @return true se sta girando all'interno dell'emulatore
 *///  w  ww. jav a 2  s.  c  o  m
public static boolean isAndroidEmulator() {
    return Build.MODEL.contains("sdk");
}

From source file:Main.java

public static String getBuildInfo(Context context) {
    // get app version info
    String appVersion = "";
    PackageInfo pInfo;//  w ww.j  a va  2  s .co m
    try {
        pInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), 0);
        appVersion = pInfo.versionName + " (" + pInfo.versionCode + ")\n";
    } catch (NameNotFoundException e) {
    }

    String board = "Board: " + Build.BOARD + "\n";
    String bootloader = "Bootloader: " + Build.BOOTLOADER + "\n";
    String brand = "Brand: " + Build.BRAND + "\n";
    String device = "Device: " + Build.DEVICE + "\n";
    String display = "Display: " + Build.DISPLAY + "\n";
    String product = "Product: " + Build.PRODUCT + "\n";
    String model = "Model: " + Build.MODEL + "\n";
    String manufacturer = "Manufacturer: " + Build.MANUFACTURER + "\n";

    return appVersion + board + bootloader + brand + device + display + product + model + manufacturer;
}

From source file:Main.java

/**
 * Return pseudo unique ID//  w w  w.  jav a 2s.c o  m
 * 
 * @return ID
 */
public static String getUniquePsuedoID() {
    // If all else fails, if the user does have lower than API 9 (lower
    // than Gingerbread), has reset their phone or 'Secure.ANDROID_ID'
    // returns 'null', then simply the ID returned will be solely based
    // off their Android device information. This is where the collisions
    // can happen.
    // Thanks http://www.pocketmagic.net/?p=1662!
    // Try not to use DISPLAY, HOST or ID - these items could change.
    // If there are collisions, there will be overlapping data
    String m_szDevIDShort = "35" + (Build.BOARD.length() % 10) + (Build.BRAND.length() % 10)
            + (Build.CPU_ABI.length() % 10) + (Build.DEVICE.length() % 10) + (Build.MANUFACTURER.length() % 10)
            + (Build.MODEL.length() % 10) + (Build.PRODUCT.length() % 10);

    // Thanks to @Roman SL!
    // http://stackoverflow.com/a/4789483/950427
    // Only devices with API >= 9 have android.os.Build.SERIAL
    // http://developer.android.com/reference/android/os/Build.html#SERIAL
    // If a user upgrades software or roots their phone, there will be a
    // duplicate entry
    String serial = null;
    try {
        serial = android.os.Build.class.getField("SERIAL").get(null).toString();

        // Go ahead and return the serial for api => 9
        return new UUID(m_szDevIDShort.hashCode(), serial.hashCode()).toString();
    } catch (Exception e) {
        // String needs to be initialized
        serial = "serial"; // some value
    }

    // Thanks @Joe!
    // http://stackoverflow.com/a/2853253/950427
    // Finally, combine the values we have found by using the UUID class to
    // create a unique identifier
    return new UUID(m_szDevIDShort.hashCode(), serial.hashCode()).toString();
}

From source file:Main.java

public static String getDeviceId(Context context) {
    try {//from   w  w  w .j  a va  2s  .c  o  m
        TelephonyManager TelephonyMgr = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
        String szImei = TelephonyMgr.getDeviceId(); // Requires READ_PHONE_STATE
        return szImei;
    } catch (Exception e) {
        // Oh well
    }
    try {
        String m_szDevIDShort = "35" + //we make this look like a valid IMEI
                Build.BOARD.length() % 10 + Build.BRAND.length() % 10 + Build.CPU_ABI.length() % 10
                + Build.DEVICE.length() % 10 + Build.DISPLAY.length() % 10 + Build.HOST.length() % 10
                + Build.ID.length() % 10 + Build.MANUFACTURER.length() % 10 + Build.MODEL.length() % 10
                + Build.PRODUCT.length() % 10 + Build.TAGS.length() % 10 + Build.TYPE.length() % 10
                + Build.USER.length() % 10; //13 digits
        return m_szDevIDShort;
    } catch (Exception e) {
        // Oh well
    }
    return "tempid" + getRandom().nextInt();
}

From source file:Main.java

public static String getSystemInfo() {
    String a = "BOARD" + Build.BOARD;
    a += "BRAND" + Build.BRAND;
    a += "CPU_ABI" + Build.CPU_ABI;
    a += "DEVICE" + Build.DEVICE;
    a += "DISPLAY" + Build.DISPLAY;
    a += "FINGERPRINT" + Build.FINGERPRINT;
    a += "HOST" + Build.HOST;
    a += "ID" + Build.ID;
    a += "MANUFACTURER" + Build.MANUFACTURER;
    a += "MODEL" + Build.MODEL;
    a += "PRODUCT" + Build.PRODUCT;
    a += "TAGS" + Build.TAGS;
    a += "TYPE" + Build.TYPE;
    a += "USER" + Build.USER;
    return a;//from w  ww.j a  v a 2s  . c o  m

}

From source file:Main.java

private static String i(Context context) {
    if (h == null) {
        String s = (new WebView(context)).getSettings().getUserAgentString();
        if (s == null || s.length() == 0 || s.equals("Java0")) {
            String s1 = System.getProperty("os.name", "Linux");
            String s2 = (new StringBuilder()).append("Android ").append(android.os.Build.VERSION.RELEASE)
                    .toString();//from   w  w w . jav  a2s . com
            Locale locale = Locale.getDefault();
            String s3 = locale.getLanguage().toLowerCase();
            if (s3.length() == 0)
                s3 = "en";
            String s4 = locale.getCountry().toLowerCase();
            String s5;
            String s6;
            if (s4.length() > 0)
                s5 = (new StringBuilder()).append(s3).append("-").append(s4).toString();
            else
                s5 = s3;
            s6 = (new StringBuilder()).append(Build.MODEL).append(" Build/").append(Build.ID).toString();
            s = (new StringBuilder()).append("Mozilla/5.0 (").append(s1).append("; U; ").append(s2).append("; ")
                    .append(s5).append("; ").append(s6).append(") AppleWebKit/0.0 (KHTML, like ")
                    .append("Gecko) Version/0.0 Mobile Safari/0.0").toString();
        }
        h = (new StringBuilder()).append(s).append(" (Mobile; ").append("afma-sdk-a-v").append("4.1.0")
                .append(")").toString();
    }
    return h;
}

From source file:Main.java

public static String getPsuedoUniqueID() {
    String devIDShort = "35" + (Build.BOARD.length() % 10) + (Build.BRAND.length() % 10);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        devIDShort += (Build.SUPPORTED_ABIS[0].length() % 10);
    } else {//from ww  w.j a  va  2  s  . c  om
        devIDShort += (Build.CPU_ABI.length() % 10);
    }
    devIDShort += (Build.DEVICE.length() % 10) + (Build.MANUFACTURER.length() % 10)
            + (Build.MODEL.length() % 10) + (Build.PRODUCT.length() % 10);
    String serial;
    try {
        serial = Build.class.getField("SERIAL").get(null).toString();
        return new UUID(devIDShort.hashCode(), serial.hashCode()).toString();
    } catch (Exception e) {
        serial = "ESYDV000";
    }
    return new UUID(devIDShort.hashCode(), serial.hashCode()).toString();
}

From source file:Main.java

@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1)
public static Bitmap fastblur(Context context, Bitmap sentBitmap, float radius) {

    if (Build.VERSION.SDK_INT > 16 && (!Build.MODEL.contains("google_sdk") && !Build.MODEL.contains("Emulator")
            && !Build.MODEL.contains("Android SDK") && !Build.FINGERPRINT.contains("vbox86p"))) {
        Bitmap bitmap = sentBitmap.copy(sentBitmap.getConfig(), true);

        final RenderScript rs = RenderScript.create(context);
        final Allocation input = Allocation.createFromBitmap(rs, sentBitmap,
                Allocation.MipmapControl.MIPMAP_NONE, Allocation.USAGE_SCRIPT);
        final Allocation output = Allocation.createTyped(rs, input.getType());
        final ScriptIntrinsicBlur script = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
        script.setRadius(radius /* e.g. 3.f */);
        script.setInput(input);// w w  w.  j a va 2  s  . c  o m
        script.forEach(output);
        output.copyTo(bitmap);
        return bitmap;
    }

    radius *= 0.1;
    return blurfast(sentBitmap, (int) radius);

    // Stack Blur v1.0 from
    // http://www.quasimondo.com/StackBlurForCanvas/StackBlurDemo.html
    //
    // Java Author: Mario Klingemann <mario at quasimondo.com>
    // http://incubator.quasimondo.com
    // created Feburary 29, 2004
    // Android port : Yahel Bouaziz <yahel at kayenko.com>
    // http://www.kayenko.com
    // ported april 5th, 2012

    // This is a compromise between Gaussian Blur and Box blur
    // It creates much better looking blurs than Box Blur, but is
    // 7x faster than my Gaussian Blur implementation.
    //
    // I called it Stack Blur because this describes best how this
    // filter works internally: it creates a kind of moving stack
    // of colors whilst scanning through the image. Thereby it
    // just has to add one new block of color to the right side
    // of the stack and remove the leftmost color. The remaining
    // colors on the topmost layer of the stack are either added on
    // or reduced by one, depending on if they are on the right or
    // on the left side of the stack.
    //
    // If you are using this algorithm in your code please add
    // the following line:
    //
    // Stack Blur Algorithm by Mario Klingemann <mario@quasimondo.com>

    /*        try {
     Bitmap bitmap = sentBitmap.copy(sentBitmap.getConfig(), true);
            
     radius *= 0.8;
     if (radius < 1) {
     return (null);
     }
            
     int w = bitmap.getWidth();
     int h = bitmap.getHeight();
            
     int[] pix = new int[w * h];
     Log.e("pix", w + " " + h + " " + pix.length);
     bitmap.getPixels(pix, 0, w, 0, 0, w, h);
            
     int wm = w - 1;
     int hm = h - 1;
     int wh = w * h;
     int div = (int) (radius + radius + 1);
            
     int r[] = new int[wh];
     int g[] = new int[wh];
     int b[] = new int[wh];
     int rsum, gsum, bsum, x, y, i, p, yp, yi, yw;
     int vmin[] = new int[Math.max(w, h)];
            
     int divsum = (div + 1) >> 1;
     divsum *= divsum;
     int dv[] = new int[256 * divsum];
     for (i = 0; i < 256 * divsum; i++) {
     dv[i] = (i / divsum);
     }
            
     yw = yi = 0;
            
     int[][] stack = new int[div][3];
     int stackpointer;
     int stackstart;
     int[] sir;
     int rbs;
     int r1 = (int) (radius + 1);
     int routsum, goutsum, boutsum;
     int rinsum, ginsum, binsum;
            
     for (y = 0; y < h; y++) {
     rinsum = ginsum = binsum = routsum = goutsum = boutsum = rsum = gsum = bsum = 0;
     for (i = (int) -radius; i <= radius; i++) {
     p = pix[yi + Math.min(wm, Math.max(i, 0))];
     sir = stack[((int) (i + radius))];
     sir[0] = (p & 0xff0000) >> 16;
     sir[1] = (p & 0x00ff00) >> 8;
     sir[2] = (p & 0x0000ff);
     rbs = r1 - Math.abs(i);
     rsum += sir[0] * rbs;
     gsum += sir[1] * rbs;
     bsum += sir[2] * rbs;
     if (i > 0) {
     rinsum += sir[0];
     ginsum += sir[1];
     binsum += sir[2];
     } else {
     routsum += sir[0];
     goutsum += sir[1];
     boutsum += sir[2];
     }
     }
     stackpointer = (int) radius;
            
     for (x = 0; x < w; x++) {
            
     r[yi] = dv[rsum];
     g[yi] = dv[gsum];
     b[yi] = dv[bsum];
            
     rsum -= routsum;
     gsum -= goutsum;
     bsum -= boutsum;
            
     stackstart = (int) (stackpointer - radius + div);
     sir = stack[stackstart % div];
            
     routsum -= sir[0];
     goutsum -= sir[1];
     boutsum -= sir[2];
            
     if (y == 0) {
     vmin[x] = (int) Math.min(x + radius + 1, wm);
     }
     p = pix[yw + vmin[x]];
            
     sir[0] = (p & 0xff0000) >> 16;
     sir[1] = (p & 0x00ff00) >> 8;
     sir[2] = (p & 0x0000ff);
            
     rinsum += sir[0];
     ginsum += sir[1];
     binsum += sir[2];
            
     rsum += rinsum;
     gsum += ginsum;
     bsum += binsum;
            
     stackpointer = (stackpointer + 1) % div;
     sir = stack[(stackpointer) % div];
            
     routsum += sir[0];
     goutsum += sir[1];
     boutsum += sir[2];
            
     rinsum -= sir[0];
     ginsum -= sir[1];
     binsum -= sir[2];
            
     yi++;
     }
     yw += w;
     }
     for (x = 0; x < w; x++) {
     rinsum = ginsum = binsum = routsum = goutsum = boutsum = rsum = gsum = bsum = 0;
     yp = (int) (-radius * w);
     for (i = (int) -radius; i <= radius; i++) {
     yi = Math.max(0, yp) + x;
            
     sir = stack[((int) (i + radius))];
            
     sir[0] = r[yi];
     sir[1] = g[yi];
     sir[2] = b[yi];
            
     rbs = r1 - Math.abs(i);
            
     rsum += r[yi] * rbs;
     gsum += g[yi] * rbs;
     bsum += b[yi] * rbs;
            
     if (i > 0) {
     rinsum += sir[0];
     ginsum += sir[1];
     binsum += sir[2];
     } else {
     routsum += sir[0];
     goutsum += sir[1];
     boutsum += sir[2];
     }
            
     if (i < hm) {
     yp += w;
     }
     }
     yi = x;
     stackpointer = (int) radius;
     for (y = 0; y < h; y++) {
     // Preserve alpha channel: ( 0xff000000 & pix[yi] )
     pix[yi] = (0xff000000 & pix[yi]) | (dv[rsum] << 16) | (dv[gsum] << 8) | dv[bsum];
            
     rsum -= routsum;
     gsum -= goutsum;
     bsum -= boutsum;
            
     stackstart = (int) (stackpointer - radius + div);
     sir = stack[stackstart % div];
            
     routsum -= sir[0];
     goutsum -= sir[1];
     boutsum -= sir[2];
            
     if (x == 0) {
     vmin[y] = Math.min(y + r1, hm) * w;
     }
     p = x + vmin[y];
            
     sir[0] = r[p];
     sir[1] = g[p];
     sir[2] = b[p];
            
     rinsum += sir[0];
     ginsum += sir[1];
     binsum += sir[2];
            
     rsum += rinsum;
     gsum += ginsum;
     bsum += binsum;
            
     stackpointer = (stackpointer + 1) % div;
     sir = stack[stackpointer];
            
     routsum += sir[0];
     goutsum += sir[1];
     boutsum += sir[2];
            
     rinsum -= sir[0];
     ginsum -= sir[1];
     binsum -= sir[2];
            
     yi += w;
     }
     }
            
     bitmap.setPixels(pix, 0, w, 0, 0, w, h);
     return (bitmap);
     } catch (OutOfMemoryError ex) {
     return sentBitmap;
     }*/
}