Skip to content

Instantly share code, notes, and snippets.

@korrio
Last active May 10, 2024 06:56
Show Gist options
  • Save korrio/9a457fdec376ad039e085426179a71da to your computer and use it in GitHub Desktop.
Save korrio/9a457fdec376ad039e085426179a71da to your computer and use it in GitHub Desktop.
Android Management API v1
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.androidmanagement.AndroidManagement;
import com.google.api.services.androidmanagement.model.DevicePolicy;
import java.io.IOException;
import java.security.GeneralSecurityException;
public class GetDeviceProfile {
private static final String ENTERPRISE_ID = "your_enterprise_id";
private static final String DEVICE_POLICY_ID = "your_device_policy_id";
private static final String APPLICATION_NAME = "your_application_name";
private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
private static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
public static void main(String[] args) throws IOException, GeneralSecurityException {
// Build the credentials
GoogleCredential credential = GoogleCredential.getApplicationDefault();
// Build the Android Management API client
AndroidManagement service = new AndroidManagement.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
// Make the API call to get the device policy
DevicePolicy devicePolicy = service.enterprises().devicePolicies().get(
"enterprises/" + ENTERPRISE_ID + "/devicePolicies/" + DEVICE_POLICY_ID
).execute();
// Print the device policy
System.out.println("Device Policy:\n" + devicePolicy.toPrettyString());
}
}
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.androidmanagement.AndroidManagement;
import com.google.api.services.androidmanagement.model.DevicePolicy;
import com.google.api.services.androidmanagement.model.PasswordRequirements;
import java.io.IOException;
import java.security.GeneralSecurityException;
import java.util.Arrays;
public class PostDeviceProfile {
private static final String ENTERPRISE_ID = "your_enterprise_id";
private static final String APPLICATION_NAME = "your_application_name";
private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
private static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
public static void main(String[] args) throws IOException, GeneralSecurityException {
// Build the credentials
GoogleCredential credential = GoogleCredential.getApplicationDefault();
// Build the Android Management API client
AndroidManagement service = new AndroidManagement.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
// Construct the device policy request
DevicePolicy devicePolicy = new DevicePolicy();
PasswordRequirements passwordRequirements = new PasswordRequirements();
passwordRequirements.setPasswordRequirements(Arrays.asList("REQUIRED", "MINIMUM_LENGTH"));
passwordRequirements.setPasswordMinimumLength(6);
devicePolicy.setProductPolicy(new DevicePolicy.ProductPolicy().setPasswordPolicies(Arrays.asList(passwordRequirements)));
// Make the API call to post the device policy
DevicePolicy response = service.enterprises().devicePolicies().create(
"enterprises/" + ENTERPRISE_ID,
devicePolicy
).execute();
System.out.println("Device policy created: " + response);
}
}
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.androidmanagement.AndroidManagement;
import com.google.api.services.androidmanagement.model.DevicePolicy;
import com.google.api.services.androidmanagement.model.EnrollmentToken;
import com.google.api.services.androidmanagement.model.PasswordRequirements;
import java.io.IOException;
import java.security.GeneralSecurityException;
import java.util.Arrays;
public class PostDeviceProfile {
private static final String ENTERPRISE_ID = "your_enterprise_id";
private static final String APPLICATION_NAME = "your_application_name";
private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
private static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
public static void main(String[] args) throws IOException, GeneralSecurityException {
// Build the credentials
GoogleCredential credential = GoogleCredential.getApplicationDefault();
// Build the Android Management API client
AndroidManagement service = new AndroidManagement.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
// Construct the device policy request
DevicePolicy devicePolicy = new DevicePolicy();
PasswordRequirements passwordRequirements = new PasswordRequirements();
passwordRequirements.setPasswordRequirements(Arrays.asList("REQUIRED", "MINIMUM_LENGTH"));
passwordRequirements.setPasswordMinimumLength(6);
devicePolicy.setProductPolicy(new DevicePolicy.ProductPolicy().setPasswordPolicies(Arrays.asList(passwordRequirements)));
// Set the enrollment token
EnrollmentToken enrollmentToken = new EnrollmentToken();
enrollmentToken.setValue("your_enrollment_token");
enrollmentToken.setPolicyName("your_policy_name");
devicePolicy.setEnrollmentToken(enrollmentToken);
// Make the API call to post the device policy
DevicePolicy response = service.enterprises().devicePolicies().create(
"enterprises/" + ENTERPRISE_ID,
devicePolicy
).execute();
System.out.println("Device policy created: " + response);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment