Skip to content

sorasung/hello-gimbal-android

Repository files navigation

Gimbal Android Basic Sample

Minimal Gimbal Integration Example on Android. After setting up your application, place(s) and communication(s) on Gimbal Manager the code below will yield Place Events and Local Notifications.

Before you create your Android application

Using the Gimbal Manager: https://manager.gimbal.com/

  • create your Gimbal account
  • create an Application using package name com.gimbal.hello_gimbal_android (generates you API KEY)
  • create at least one Place (using a Beacon or Geofence)
  • create at least one Communicate (used for the local notification)
  • download the latest V2 SDK

In the sample Android application

  • to run this sample in Android Studio choose the 'Import Project' option
  • fill your API KEY into the MainActivity
  • add the jars from the SDK libs directory to the project libs directory

Full Gimbal Docs https://gimbal.com/docs

package com.gimbal.hello_gimbal_android;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

import com.gimbal.android.CommunicationManager;
import com.gimbal.android.Gimbal;
import com.gimbal.android.PlaceEventListener;
import com.gimbal.android.PlaceManager;
import com.gimbal.android.Visit;


public class MainActivity extends ActionBarActivity {

    private PlaceManager placeManager;
    private PlaceEventListener placeEventListener;
    private ArrayAdapter<String> listAdapter;
    private ListView listView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1);
        listView = (ListView) findViewById(R.id.list);
        listView.setAdapter(listAdapter);

        listAdapter.add("Setting Gimbal API Key");
        listAdapter.notifyDataSetChanged();
        Gimbal.setApiKey(this.getApplication(), "YOUR_API_KEY_HERE");

        placeEventListener = new PlaceEventListener() {
            @Override
            public void onVisitStart(Visit visit) {
                listAdapter.add(String.format("Start Visit for %s", visit.getPlace().getName()));
                listAdapter.notifyDataSetChanged();
            }

            @Override
            public void onVisitEnd(Visit visit) {
                listAdapter.add(String.format("End Visit for %s", visit.getPlace().getName()));
                listAdapter.notifyDataSetChanged();
            }
        };

        placeManager = PlaceManager.getInstance();
        placeManager.addListener(placeEventListener);
        placeManager.startMonitoring();

        CommunicationManager.getInstance().startReceivingCommunications();
    }

}

About

Basic Gimbal Android Sample Application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages