Commit 23122d53 authored by Tanner Semerad's avatar Tanner Semerad
Browse files

added isTablet method for iOS and Android

parent 668996c6
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -172,6 +172,6 @@ console.log("Timezone", DeviceInfo.getTimezone()); // e.g America/Mexico_City
console.log("App Instance ID", DeviceInfo.getInstanceID()); // ANDROID ONLY - see https://developers.google.com/instance-id/
console.log("App Instance ID", DeviceInfo.getInstanceID()); // ANDROID ONLY - see https://developers.google.com/instance-id/


console.log("App is running in emulator", DeviceInfo.isEmulator()); // if app is running in emulator return true
console.log("App is running in emulator", DeviceInfo.isEmulator()); // if app is running in emulator return true
```



console.log("App is running on a tablet", DeviceInfo.isTablet()); // if app is running on a tablet return true
```
+6 −0
Original line number Original line Diff line number Diff line
@@ -157,6 +157,11 @@ RCT_EXPORT_MODULE()
  return [self.deviceName isEqual: @"Simulator"];
  return [self.deviceName isEqual: @"Simulator"];
}
}


- (bool) isTablet
{
  return [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad;
}

- (NSDictionary *)constantsToExport
- (NSDictionary *)constantsToExport
{
{
    UIDevice *currentDevice = [UIDevice currentDevice];
    UIDevice *currentDevice = [UIDevice currentDevice];
@@ -180,6 +185,7 @@ RCT_EXPORT_MODULE()
             @"userAgent": self.userAgent,
             @"userAgent": self.userAgent,
             @"timezone": self.timezone,
             @"timezone": self.timezone,
             @"isEmulator": @(self.isEmulator),
             @"isEmulator": @(self.isEmulator),
             @"isTablet": @(self.isTablet),
             };
             };
}
}


+7 −0
Original line number Original line Diff line number Diff line
@@ -3,6 +3,7 @@ package com.learnium.RNDeviceInfo;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothAdapter;
import android.content.pm.PackageInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager;
import android.content.res.Configuration;
import android.os.Build;
import android.os.Build;
import android.provider.Settings.Secure;
import android.provider.Settings.Secure;


@@ -63,6 +64,11 @@ public class RNDeviceModule extends ReactContextBaseJavaModule {
      || "google_sdk".equals(Build.PRODUCT);
      || "google_sdk".equals(Build.PRODUCT);
  }
  }


  private Boolean isTablet() {
    int layout = getReactApplicationContext().getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK;
    return layout == Configuration.SCREENLAYOUT_SIZE_LARGE || layout == Configuration.SCREENLAYOUT_SIZE_XLARGE;
  }

  @Override
  @Override
  public @Nullable Map<String, Object> getConstants() {
  public @Nullable Map<String, Object> getConstants() {
    HashMap<String, Object> constants = new HashMap<String, Object>();
    HashMap<String, Object> constants = new HashMap<String, Object>();
@@ -106,6 +112,7 @@ public class RNDeviceModule extends ReactContextBaseJavaModule {
    constants.put("userAgent", System.getProperty("http.agent"));
    constants.put("userAgent", System.getProperty("http.agent"));
    constants.put("timezone", TimeZone.getDefault().getID());
    constants.put("timezone", TimeZone.getDefault().getID());
    constants.put("isEmulator", this.isEmulator());
    constants.put("isEmulator", this.isEmulator());
    constants.put("isTablet", this.isTablet());
    return constants;
    return constants;
  }
  }
}
}
+3 −0
Original line number Original line Diff line number Diff line
@@ -59,4 +59,7 @@ module.exports = {
  isEmulator: function() {
  isEmulator: function() {
    return RNDeviceInfo.isEmulator;
    return RNDeviceInfo.isEmulator;
  },
  },
  isTablet: function() {
    return RNDeviceInfo.isTablet;
  },
};
};