版权声明:本文为博主原创文章,未经允许不得转载,如有问题,欢迎指正,谢谢! https://blog.csdn.net/cbk861110/article/details/88627751
项目源码请移步:https://github.com/caobaokang419/FirebaseApp(欢迎Github Fork&Star,如有描述错误的地方,请帮忙指正),谢谢!
一、 概念阐述:
In App Message(应用内消息):纯属运营部分,应用只需集成SDK,并上报触发事件(运营可根据事件自动下发应用内消息,SDK负责应用内消息显示)即可。
二、远程配置的集成说明:
- In App Message(应用内消息) :需自备梯子
三、代码汉化说明:
1. project build.gradle 添加:
implementation 'com.google.firebase:firebase-inappmessaging-display:17.0.4'
implementation 'com.google.firebase:firebase-iid:17.0.4'
2. AndroidManifest.xml 添加:
<activity
android:name=".inappmessaging.InAppMsgMainActivity"
android:label="@string/fb_inappmsg_label"
android:theme="@style/AppTheme" />
3. Activity实现(应用只负责:上报事件(1. 运营后台可根据事件自动下发应用内消息; 2. SDK负责应用内消息显示)):
public class InAppMsgMainActivity extends AppCompatActivity {
private static final String TAG = "FIAM-Quickstart";
private FirebaseAnalytics mFirebaseAnalytics;
private FirebaseInAppMessaging mInAppMessaging;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fb_inappmsg_main);
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
mInAppMessaging = FirebaseInAppMessaging.getInstance();
mInAppMessaging.setAutomaticDataCollectionEnabled(true);
mInAppMessaging.setMessagesSuppressed(false);
findViewById(R.id.eventTriggerButton)
.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View view) {
mFirebaseAnalytics.logEvent("engagement_party", new Bundle()); //应用通过Analytics上报打点事件
}
});
// Get and display the Instance ID
final TextView textView = findViewById(R.id.instanceIdText);
FirebaseInstanceId.getInstance().getInstanceId()
.addOnSuccessListener(new OnSuccessListener<InstanceIdResult>() {
@Override
public void onSuccess(InstanceIdResult instanceIdResult) {
String instanceId = instanceIdResult.getId();
textView.setText(getString(R.string.instance_id_fmt, instanceId));
Log.d(TAG, "InstanceId: " + instanceId);
}
});
}
}