Skip to content

Instantly share code, notes, and snippets.

View aditrioka's full-sized avatar
🏠
Working from home

Adi Trioka aditrioka

🏠
Working from home
  • Bekasi, Indonesia
  • 12:57 (UTC +07:00)
View GitHub Profile
@aditrioka
aditrioka / TokenReceivedListener.kt
Created August 9, 2019 09:10
token received listener class
// we created this class to listen to token received
class TokenReceivedListener(private val context: Context): PushManager.OnTokenReceivedListener {
private val TAG = TokenReceivedListener::class.java.simpleName
override fun onTokenReceived(token: String?) {
token?.let {
// future implementation
}
@aditrioka
aditrioka / CustomPushMessageListener.kt
Created August 9, 2019 09:02
custom push message listener file
// We also created custom push listener
class CustomPushMessageListener : PushMessageListener() {
override fun onHandleRedirection(activity: Activity?, payload: Bundle?) {
super.onHandleRedirection(activity, payload)
payload?.keySet()?.forEach {
Log.i("MOENGAGE", "$it = ${payload.getString(it)}")
}
@aditrioka
aditrioka / MyFirebaseMessagingService.kt
Created August 9, 2019 09:02
firebase messaging service
// we added several line in this code
class MyFirebaseMessagingService : MoEFireBaseMessagingService() {
override fun onMessageReceived(remoteMessage: RemoteMessage?) {
super.onMessageReceived(remoteMessage)
if (remoteMessage == null) return
val pushPayload = remoteMessage.data
@aditrioka
aditrioka / proguard-rules.pro
Created August 9, 2019 08:48
proguard file
# we added proguard rules accordingly as described in the documentation
# Moengage
-keep class com.moe.pushlibrary.activities.** { *; }
-keep class com.moe.pushlibrary.MoEHelper
-keep class com.moengage.locationlibrary.GeofenceIntentService
-keep class com.moe.pushlibrary.InstallReceiver
-keep class com.moe.pushlibrary.providers.MoEProvider
-keep class com.moe.pushlibrary.models.** { *;}
-keep class com.moengage.core.GeoTask
@aditrioka
aditrioka / AndroidManifest.xml
Created August 9, 2019 08:45
android manifest file
<!-- we added fullBackupContent in application tag accordingly as described in the documentation -->
<application
android:name=".StudentApplication"
android:fullBackupContent="@xml/backup_descriptor">
<!-- ... -->
</application
@aditrioka
aditrioka / CredentialRepository.java
Created August 9, 2019 08:39
operation when logout
// this function is called when logout
public void logout() {
MoEHelper.getInstance(mContext).logoutUser();
}
@aditrioka
aditrioka / LoginPresenter.kt
Created August 9, 2019 08:36
operation after login success
// this function is called after login success
private fun onLoginSuccess(successResponse: LoginSuccessResponse) {
if (userRepo.uoc != successResponse.uoc) {
MoEHelper.getInstance(mContext).setAlias(successResponse.uoc)
} else {
MoEHelper.getInstance(mContext).apply {
setUniqueId(userRepo.uoc)
setFullName(successResponse.name)
setEmail(successResponse.email)
}
@aditrioka
aditrioka / StudentApplication.java
Last active August 9, 2019 08:30
application class where we initialize moengage
// we initialize moengage in applicaiton class
public class StudentApplication {
@Override
public void onCreate() {
super.onCreate();
setupMoengage();
}
package id.binarykitchen.gemarbelajar;
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
package id.binarykitchen.gemarbelajar;
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {