{"_id":"57d522dbb0249a0e002bb9b9","project":"54861bb654b3ce0b00367292","__v":1,"user":"548d74b716fc980b00e2a786","version":{"_id":"57b96d6b1d08500e00bf81d1","__v":7,"project":"54861bb654b3ce0b00367292","createdAt":"2016-08-21T08:59:23.326Z","releaseDate":"2016-08-21T08:59:23.326Z","categories":["57b96d6b1d08500e00bf81d2","57b96d6b1d08500e00bf81d3","57b96d6b1d08500e00bf81d4","57b96d6b1d08500e00bf81d5","57b96d6b1d08500e00bf81d6","57b96d6b1d08500e00bf81d7","57b96d6b1d08500e00bf81d8","57b96d6b1d08500e00bf81d9","57b96d6b1d08500e00bf81da","57b96d6b1d08500e00bf81db","57b96d6b1d08500e00bf81dc","57b97748306b9b0e001dd53f","57d12c6c1227b40e0044908a","57d51ad68191880e008bb51b","57d52b5cf350090e00fe073e","57d5468a17b492170053a3f0","57df9df05927cb0e002bce1e"],"is_deprecated":true,"is_hidden":false,"is_beta":false,"is_stable":false,"codename":"","version_clean":"4.0.0","version":"4.0"},"category":{"_id":"57d51ad68191880e008bb51b","project":"54861bb654b3ce0b00367292","__v":0,"version":"57b96d6b1d08500e00bf81d1","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-09-11T08:50:30.403Z","from_sync":false,"order":3,"slug":"android-essentials-kit","title":"Android / Essentials KIt"},"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-09-11T09:24:43.584Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":3,"body":"[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"public class MainActivity extends AppCompatActivity {\\n    private final static String TAG = MainActivity.class.getSimpleName();\\n \\t\\t// elasticode instance\\n    private Elasticode elasticode;\\n    :::at:::Override\\n    protected void onCreate(Bundle savedInstanceState) {\\n        super.onCreate(savedInstanceState);\\n        setContentView(R.layout.activity_main);\\n\\n      \\t// set your key\\n        elasticode = Elasticode.getInstance(this, \\\"<APIKey>\\\", elasticodeObserver);\\n      \\n      \\t// add action\\n        ElasticodeAction showVideoAction = \\n          new ElasticodeAction(\\\"Show video\\\", new ElasticodeOnClickListener() {\\n            @Override\\n            public void onClick(View v) {\\n                super.onClick(v);\\n                // Show video\\n            }\\n        });\\n        elasticode.addActions(showVideoAction);\\n      \\n      \\t// set 3rd party analytics\\n        elasticode.setThirdPartyAnalytics(\\\"Mixpanel\\\", new ElasticodeBlock() {\\n            @Override\\n            public void perform(String eventName) {\\n                mixpanel.track(eventName, new JSONObject());\\n            }\\n        });\\n\\n        elasticode.ready();\\n    }\\n  \\n\\t  @Override\\n    protected void onNewIntent(Intent intent) {\\n        super.onNewIntent(intent);\\n        elasticode.setNewIntent(intent);\\n    }\\n  \\n    private Observer elasticodeObserver = new Observer() {\\n        @Override\\n        public void update(Observable observable, Object data) {\\n            if (data instanceof ElasticodeResponse) {\\n                ElasticodeResponse response = (ElasticodeResponse) data;\\n                if (response.getError() != null) {\\n                    Log.d(TAG, \\\"Error: \\\" + response.getError());\\n                }else{\\n                \\tswitch (response.getType()) {\\n                  \\t  case SYNC:\\n                    \\t    // Elasticode in sync\\n                      \\t  break;\\n                \\t}\\n                }\\n            }\\n        }\\n    };\\n}\",\n      \"language\": \"java\"\n    }\n  ]\n}\n[/block]","excerpt":"","slug":"integration-example","type":"basic","title":"Integration example"}

Integration example


[block:code] { "codes": [ { "code": "public class MainActivity extends AppCompatActivity {\n private final static String TAG = MainActivity.class.getSimpleName();\n \t\t// elasticode instance\n private Elasticode elasticode;\n @Override\n protected void onCreate(Bundle savedInstanceState) {\n super.onCreate(savedInstanceState);\n setContentView(R.layout.activity_main);\n\n \t// set your key\n elasticode = Elasticode.getInstance(this, \"<APIKey>\", elasticodeObserver);\n \n \t// add action\n ElasticodeAction showVideoAction = \n new ElasticodeAction(\"Show video\", new ElasticodeOnClickListener() {\n @Override\n public void onClick(View v) {\n super.onClick(v);\n // Show video\n }\n });\n elasticode.addActions(showVideoAction);\n \n \t// set 3rd party analytics\n elasticode.setThirdPartyAnalytics(\"Mixpanel\", new ElasticodeBlock() {\n @Override\n public void perform(String eventName) {\n mixpanel.track(eventName, new JSONObject());\n }\n });\n\n elasticode.ready();\n }\n \n\t @Override\n protected void onNewIntent(Intent intent) {\n super.onNewIntent(intent);\n elasticode.setNewIntent(intent);\n }\n \n private Observer elasticodeObserver = new Observer() {\n @Override\n public void update(Observable observable, Object data) {\n if (data instanceof ElasticodeResponse) {\n ElasticodeResponse response = (ElasticodeResponse) data;\n if (response.getError() != null) {\n Log.d(TAG, \"Error: \" + response.getError());\n }else{\n \tswitch (response.getType()) {\n \t case SYNC:\n \t // Elasticode in sync\n \t break;\n \t}\n }\n }\n }\n };\n}", "language": "java" } ] } [/block]