{"id":17887867,"url":"https://github.com/smithclay/androidperftestexample","last_synced_at":"2025-04-03T02:41:55.874Z","repository":{"id":145038358,"uuid":"56890639","full_name":"smithclay/AndroidPerfTestExample","owner":"smithclay","description":"Automated Android performance testing with AWS DeviceFarm, New Relic, and TravisCI","archived":false,"fork":false,"pushed_at":"2016-04-26T19:55:20.000Z","size":314,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T16:43:47.578Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smithclay.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-22T23:26:24.000Z","updated_at":"2016-12-08T18:05:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"cf08902a-1b4b-4658-8639-b95fca9e1fff","html_url":"https://github.com/smithclay/AndroidPerfTestExample","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smithclay%2FAndroidPerfTestExample","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smithclay%2FAndroidPerfTestExample/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smithclay%2FAndroidPerfTestExample/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smithclay%2FAndroidPerfTestExample/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smithclay","download_url":"https://codeload.github.com/smithclay/AndroidPerfTestExample/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246927810,"owners_count":20856193,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-28T13:35:43.549Z","updated_at":"2025-04-03T02:41:55.827Z","avatar_url":"https://github.com/smithclay.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\nAndroid NetworkConnect Sample + New Relic Monitoring + AWS Device Farm\n===================================\n\n[![Build Status](https://travis-ci.org/smithclay/AndroidPerfTestExample.svg?branch=master)](https://travis-ci.org/smithclay/AndroidPerfTestExample)\n\nThis sample demonstrates how to connect to the network and fetch raw HTML using\nHttpURLConnection. AsyncTask is used to perform the fetch on a background thread.\n\nNew Relic is also installed along with the AWS Device Farm for automated testing.\n\n### Pre-requisites\n\n- Android SDK v23\n- Android Build Tools v24.0.0 rc3\n- Android Support Repository\n- TravisCI account\n- [New Relic](https://www.newrelic.com) Account\n- Amazon Web Services Account\n\n### Screenshot\n\n\u003cimg src=\"screenshots/architecture.png\" height=\"400\" alt=\"Use all the SaSS\"/\u003e\n\n\u003cimg src=\"screenshots/main.png\" height=\"400\" alt=\"Screenshot\"/\u003e\n\n### Getting Started\n\nThis sample uses the Gradle build system. To build this project, use the\n\"gradlew build\" command or use \"Import Project\" in Android Studio.\n\n## AWS Device Farm Setup\n\nThe AWS Command-line interface (CLI) is required.\n\n### Create a new AWS Device Farm Project\n\n```sh\nsh $ aws devicefarm create-project --name NetworkConnect\n```\n\n### Update the Android Gradle File\n\nSet `projectName` to the name of the Device Farm project that was creating using the CLI.\n\n```\n// Merge this with existing build.gradle\nbuildscript {\n    repositories {\n        jcenter()\n        mavenCentral()\n    }\n\n    dependencies {\n        classpath 'com.amazonaws:aws-devicefarm-gradle-plugin:1.0'\n    }\n}\n\napply plugin: 'devicefarm'\n\ndevicefarm {\n    // The project must already exist!\n    projectName \"NetworkConnect\"\n\n    authentication {\n        accessKey System.env.AWS_ACCESS_KEY_ID\n        secretKey System.env.AWS_SECRET_ACCESS_KEY\n    }\n\n    appexplorer {}\n}\n\n```\n\n### There are two flavors\n\nBuild flavors are used to send test data to another New Relic application (and not pollute production data with testing):\n\n```\n    productFlavors {\n        prod {\n            buildConfigField \"String\", \"NEWRELIC_TOKEN\", \"\\\"AA86306d05a11be432d9edc83985f86c8e1656bb38\\\"\"\n        }\n        zPref {\n            buildConfigField \"String\", \"NEWRELIC_TOKEN\", \"\\\"AA3bb1c6bf2fb0ed555cd7f7149dc9e83d7032343a\\\"\"\n        }\n    }\n```\n\n### Run on DeviceFarm (Environment variables `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` must be set)\n\n```\n./gradlew devicefarmUpload\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmithclay%2Fandroidperftestexample","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmithclay%2Fandroidperftestexample","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmithclay%2Fandroidperftestexample/lists"}