{"__v":1,"_id":"55a940485d3abb0d0012f1af","category":{"__v":11,"_id":"55a93098cf45e1390093f351","pages":["55a930bdcf45e1390093f353","55a932afc8bd450d000dd1d6","55a938ba4c661b3700cf4e1f","55a939b502becf2d007aac34","55a93a015d3abb0d0012f184","55a93b225d3abb0d0012f191","55a93c4002becf2d007aac43","55a93d4c02becf2d007aac4c","55a940485d3abb0d0012f1af","55a9409802becf2d007aac64","55a9410c5d3abb0d0012f1b4"],"project":"559a61d2dbcfd20d00710b39","version":"559a61d2dbcfd20d00710b3c","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-07-17T16:43:04.054Z","from_sync":false,"order":4,"slug":"android-sdk-reference","title":"Android SDK Reference"},"parentDoc":null,"project":"559a61d2dbcfd20d00710b39","user":"559a618bdbcfd20d00710b38","version":{"__v":23,"_id":"559a61d2dbcfd20d00710b3c","project":"559a61d2dbcfd20d00710b39","createdAt":"2015-07-06T11:09:06.510Z","releaseDate":"2015-07-06T11:09:06.510Z","categories":["559a61d3dbcfd20d00710b3d","55a589ddaaf9cf1900114dd0","55a589e30f354f0d00fd0312","55a589ea80c8a30d00b323cc","55a589f6aaf9cf1900114dd1","55a58d4e80c8a30d00b323e6","55a8e7a227a17d21005251a2","55a93098cf45e1390093f351","55afb085f202b12100cd9e83","55afb22e902fd51700f5f8bf","55afb260902fd51700f5f8c2","55afb28ec8a85321007a5462","55afb294f202b12100cd9e95","55afb29b902fd51700f5f8c5","55afb2a1c8a85321007a5463","55afb2a7902fd51700f5f8c7","55afb2ad902fd51700f5f8c8","55afb2b5902fd51700f5f8ca","55b74b2131bccb190081bedc","55bb441b54f9640d006e6cf2","565711085cb2420d00d70071","5681681330018c0d006bf7ff","588f38b5923d610f00c72dad"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"Version 1.0","version_clean":"1.0.0","version":"1"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2015-07-17T17:50:00.964Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":7,"body":"You may implement MOCAProximityService.EventListener to handle proximity events:\n\n1 - Add the listener class to MOCA:\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"MOCAProximityService proxService = MOCA.getProximityService();\\nif (proxService != null) {\\n  proxService.setEventListener(this);\\n}\",\n      \"language\": \"java\"\n    }\n  ]\n}\n[/block]\n2 - Implement the methods.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/**\\n* This listener defines the callback methods to respond to\\n* proximity-related events.\\n*/  \\npublic interface EventListener {\\n  public void didEnterRange(MOCABeacon beacon, MOCAProximity proximity);\\n  public void didExitRange(MOCABeacon beacon);\\n  public void didBeaconProximityChange(MOCABeacon beacon, MOCAProximity prevProximity, MOCAProximity curProximity);\\n  public void didEnterPlace(MOCAPlace place);\\n  public void didExitPlace(MOCAPlace place);\\n  public void didEnterZone(MOCAZone zone);\\n  public void didExitZone(MOCAZone zone);\\n  public boolean handleCustomTrigger(String customAttribute);\\n  public void didLoadedBeaconsData(List<MOCABeacon> beacons);        \\n} \\n\",\n      \"language\": \"java\"\n    }\n  ]\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"warning\",\n  \"title\": \"Important\",\n  \"body\": \"Please note that implementing this interface is **completely optional** , MOCA SDK will take care of detecting beacons, geofences and showing experiences on top of your App UI without having to implement this interface. Use this methods if you want to create custom behaviors inside your application.\",\n  \"sidebar\": true\n}\n[/block]","excerpt":"","slug":"proximity-events-listener","type":"basic","title":"Proximity Events Listener"}

Proximity Events Listener


You may implement MOCAProximityService.EventListener to handle proximity events: 1 - Add the listener class to MOCA: [block:code] { "codes": [ { "code": "MOCAProximityService proxService = MOCA.getProximityService();\nif (proxService != null) {\n proxService.setEventListener(this);\n}", "language": "java" } ] } [/block] 2 - Implement the methods. [block:code] { "codes": [ { "code": "/**\n* This listener defines the callback methods to respond to\n* proximity-related events.\n*/ \npublic interface EventListener {\n public void didEnterRange(MOCABeacon beacon, MOCAProximity proximity);\n public void didExitRange(MOCABeacon beacon);\n public void didBeaconProximityChange(MOCABeacon beacon, MOCAProximity prevProximity, MOCAProximity curProximity);\n public void didEnterPlace(MOCAPlace place);\n public void didExitPlace(MOCAPlace place);\n public void didEnterZone(MOCAZone zone);\n public void didExitZone(MOCAZone zone);\n public boolean handleCustomTrigger(String customAttribute);\n public void didLoadedBeaconsData(List<MOCABeacon> beacons); \n} \n", "language": "java" } ] } [/block] [block:callout] { "type": "warning", "title": "Important", "body": "Please note that implementing this interface is **completely optional** , MOCA SDK will take care of detecting beacons, geofences and showing experiences on top of your App UI without having to implement this interface. Use this methods if you want to create custom behaviors inside your application.", "sidebar": true } [/block]