Skip to content

Instantly share code, notes, and snippets.

val audioManager = context.getSystemService(Context.AUDIO_SERVICE) as AudioManager
val framesPerBuffer = audioManager.getProperty(AudioManager.PROPERTY_OUTPUT_FRAMES_PER_BUFFER).toLong()
@julioz
julioz / output-sample-rate.kt
Created June 14, 2018 13:44
Fetch the optimal output sample rate for the Android device's DAC
val audioManager = context.getSystemService(Context.AUDIO_SERVICE) as AudioManager
val outputSampleRate = audioManager.getProperty(AudioManager.PROPERTY_OUTPUT_SAMPLE_RATE).toLong()
@julioz
julioz / ContinuousDeployDemoFullAppUpdate.java
Created April 27, 2016 02:19
Rotina de atualização de um app
Edits edits = publisher.edits();
Apks apks = edits.apks();
File apkFile = new File(APP_APK_PATH);
FileContent apkContent = new FileContent(APK_MIME_TYPE, apkFile);
Apk apk = apks.upload(PACKAGE, transactionId, apkContent).execute();
int versionCode = apk.getVersionCode();
Tracks tracks = edits.tracks();
List<Integer> versions = Collections.singletonList(versionCode);
Track track = new Track().setVersionCodes(versions);
@julioz
julioz / ContinuousDeployDemoWhatsNewUpdate.java
Last active April 27, 2016 02:15
Atualização do What's new
Apklistings apklistings = edits.apklistings();
ApkListing whatsnew = new ApkListing().setRecentChanges(whatsNewDescription);
apklistings.update(PACKAGE, transactionId, versionCode, language, whatsnew).execute();
private static final String APK_MIME_TYPE = "application/vnd.android.package-archive";
...
Edits edits = publisher.edits();
Apks apks = edits.apks();
File apkFile = new File(APP_APK_PATH); // File pointing to the new APK to be uploaded
FileContent apkContent = new FileContent(APK_MIME_TYPE, apkFile);
Apk apk = apks.upload(PACKAGE, transactionId, apkContent).execute();
int versionCode = apk.getVersionCode();
@julioz
julioz / ContinuousDeployDemoTrackAssignment.java
Created April 27, 2016 01:18
Atribuição à Trilha de Release
Tracks tracks = edits.tracks();
List<Integer> versions = Collections.singletonList(versionCode);
Track track = new Track().setVersionCodes(versions);
tracks.update(PACKAGE, transactionId, trackId, track).execute();
@julioz
julioz / AppEdit.java
Created April 27, 2016 00:42
Fórmula de um AppEdit
AndroidPublisher publisher = ...
Edits edits = publisher.edits();
// insert, get, delete
AppEdit appEdit = edits.insert(PACKAGE, null).execute();
String transactionId = appEdit.getId();
...
...
NetHttpTransport http = GoogleNetHttpTransport.newTrustedTransport();
JacksonFactory json = JacksonFactory.getDefaultInstance();
GoogleCredential credential = ...
AndroidPublisher publisher = new AndroidPublisher.Builder(http, json, credential).
setApplicationName(PACKAGE).
build();
@julioz
julioz / ContinuousDeployDemo.java
Created April 27, 2016 00:31
GoogleCredential instantiation
NetHttpTransport http = GoogleNetHttpTransport.newTrustedTransport();
JacksonFactory json = JacksonFactory.getDefaultInstance();
Set<String> scopes = Collections.singleton(AndroidPublisherScopes.ANDROIDPUBLISHER);
File secretFile = new File(Constants.SECRET_FILE_PATH);
GoogleCredential credential = new GoogleCredential.Builder().
setTransport(http).
setJsonFactory(json).
setServiceAccountPrivateKeyId(Constants.KEY_ID).
@julioz
julioz / build.gradle
Created April 27, 2016 00:30
Android publisher gradle dependency
compile 'com.google.apis:google-api-services-androidpublisher:v2-rev24-1.21.0'