Back to project page appboy-android-sdk.
The source code is released under:
Copyright (c) 2014 Appboy, Inc. All rights reserved. * Use of source code or binaries contained within Appboy's Android SDK is permitted only to enable use of the Appboy platform by customers of Appb...
If you think the Android project appboy-android-sdk listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.appboy.helloworld; // w w w .jav a2s. c o m import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.util.Patterns; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import com.appboy.Appboy; public class HelloAppboyActivity extends Activity { private EditText mNickname, mHighScore, mEmail; private Context mApplicationContext; // These events will be shown in the Appboy dashboard. private static final String HELLO_APPBOY_CUSTOM_CLICK_EVENT = "clicked submit"; private static final String HELLO_APPBOY_HIGH_SCORE_ATTRIBUTE_KEY = "user high score"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.hello_appboy); // It is good practice to always get an instance of the appboy singleton using the application // context. mApplicationContext = this.getApplicationContext(); mNickname = (EditText) findViewById(R.id.com_appboy_hello_high_score_nickname); mHighScore = (EditText) findViewById(R.id.com_appboy_hello_high_score); mEmail = (EditText) findViewById(R.id.com_appboy_hello_email); Button submit = (Button) findViewById(R.id.com_appboy_hello_submit); submit.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // Validate the nickname and high score, then send off to the server. String nickname = mNickname.getEditableText().toString(); String highScore = mHighScore.getEditableText().toString(); String email = mEmail.getEditableText().toString(); if (validateNameAndHighScore(nickname, highScore, email)) { // Assign the current user an email. You can search for this user using this email on the // dashboard Appboy.getInstance(mApplicationContext).getCurrentUser().setEmail(email); // Send the custom event for the click Appboy.getInstance(mApplicationContext).logCustomEvent(HELLO_APPBOY_CUSTOM_CLICK_EVENT); // Log the custom attribute of "nickname : highScore" String attributeString = String.format("%s : %s", nickname, highScore); Appboy.getInstance(mApplicationContext).getCurrentUser(). setCustomUserAttribute(HELLO_APPBOY_HIGH_SCORE_ATTRIBUTE_KEY, attributeString); displayToast("Sent off event and attribute to Appboy!"); } } }); } // Displays a long toast to the user. private void displayToast(String message) { Toast.makeText(this, message, Toast.LENGTH_LONG).show(); } // Returns true if the name is nonempty, the score is nonempty, and the email is valid private boolean validateNameAndHighScore(String name, String score, String email) { if (name.length() > 0 && score.length() > 0) { if (Patterns.EMAIL_ADDRESS.matcher(email).matches()) { return true; } else { displayToast("Email must be valid"); } } else { displayToast("Fields cannot be empty"); } return false; } @Override protected void onStart() { super.onStart(); // When opening and closing a session, use the current activity Appboy.getInstance(mApplicationContext).openSession(this); } @Override protected void onStop() { super.onStop(); Appboy.getInstance(mApplicationContext).closeSession(this); } }