There are two callbacks you can define on the FootmarksAPI class instance. They should be used after getting an instance from the init() call. You register for them by calling:
mFootmarksAPI.onRangeBeacons(beaconList -> {
// Description: Returns all beacons currently in range of the user.
// Your processing code goes here
})
and
mFootmarksAPI.onCompleteExperiences((beacon, experienceList) -> {
//Description: Returns one or more Experience objects, depending on how your
//experiences/beacons/zones are setup in the management console.
// Your processing code goes here
});
Java
switch(exp.getType()){
case ExperienceTypeImage:
ImageExp image = ((ImageExp)exp);
ProgressBar progress(ProgressBar)findViewById(R.id.progress);
image.presentPictureInImageView((ImageView)
row.findViewById(R.id.image), progress);
break;
case ExperienceTypeVideo:
VideoExp video = ((VideoExp)exp);
String url = video.videoUrl;
break;
case ExperienceTypeHtml:
HtmlExp html = ((HtmlExp)exp);
html.presentHtmlInWebView(((WebView)findViewById(R.id.webview)));
break;
case ExperienceTypeUrl:
UrlExp url = ((UrlExp)exp);
url.presentUrlInWebView(((WebView)findViewById(R.id.webview)));
break;
case ExperienceTypeCustom:
CustomExp custom = ((CustomExp)exp);
String item = custom.text;
break;
case ExperienceTypeAlert:
AlertExp alert = ((AlertExp)exp);
alert.showAlert();
break;
default:
break;
}