Tôi đã triển khai Firebase Analytics. Nó hoạt động tốt. Tôi cũng muốn sử dụng Google Analytics. Dựa trên các cuộc thảo luận here Tôi đã bao gồm các đối tượng dưới đây trong google-services.jsonThêm Firebase Analytics và Google Analytics trong Ứng dụng Android
"analytics_service": {
"status": 2,
"analytics_property": {
"tracking_id": "<your tracking id>"
}
},
Đối với Google Analytics, tôi có Tracker Lớp
public class PuzzleGamesTracker extends Application {
// The following line should be changed to include the correct property id.
private static final String PROPERTY_ID = "<your tracking id>";
private Tracker mTracker;
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
/**
* Gets the default {@link Tracker} for this {@link Application}.
* @return tracker
*/
synchronized public Tracker getDefaultTracker() {
if (mTracker == null) {
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
// To enable debug logging use: adb shell setprop log.tag.GAv4 DEBUG
mTracker = analytics.newTracker(R.xml.global_tracker);
}
return mTracker;
}
}
Cách sử dụng
public void sendToGoogleAnalytics(String arg) {
// TODO Auto-generated method stub
sendToFireBase();
PuzzleGamesTracker application = (PuzzleGamesTracker) getApplication();
Tracker mTracker = application.getDefaultTracker();
mTracker.setScreenName(arg);
mTracker.send(new HitBuilders.AppViewBuilder().build());
}
public void sendToFireBase() {
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, "Test_Item 1A");
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, "Test_Name 1A");
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "Test_Image 1");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, "Test_Item B");
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, "Test_Name B");
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "Test_Image 1");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, "Test_Item 2A");
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, "Test_Name 2A");
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "Test_Image 2");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
}
Lỗi Kịch bản
Nếu tôi không bao gồm đối tượng google analytics bên dưới trong google-services.json, thì Fire Base sẽ hoạt động bình thường.
"analytics_service": {
"status": 2,
"analytics_property": {
"tracking_id": "<your tracking id>"
}
},
Khi tôi bao gồm phân tích google đối tượng trong google-services.json, sau đó tôi nhận được báo lỗi dưới đây này
Error:Execution failed for task ':android:mergeReleaseResources'.
> [xml/global_tracker] C:\Users\android\build\generated\res\google- services\release\xml\global_tracker.xml [xml/global_tracker] C:\Users\android\res\xml\global_tracker.xml: Error: Duplicate resources
Câu hỏi 1. Tôi có cần phải loại bỏ các ecommerce_tracker.xml và global_tracker.xml? Đã PuzzleGamesTracker lớp đang sử dụng nó. Làm thế nào để vượt qua nó? 2. Xin hướng dẫn cho tôi để tôi có thể có cả FA và GA thực hiện thành công
lý do bạn triển khai hai điều tương tự? – johnrao07
Chúng không giống nhau. Tôi không phải OP nhưng có cùng một vấn đề. Một trong những khách hàng của tôi đã yêu cầu tôi thêm phân tích FireBase trong khi họ đã có Google Analytics trong ứng dụng. Họ có lý do kinh doanh của họ và cả hai sẽ có thể làm việc song song, sau khi cả hai đều là các sản phẩm của Google. – breakline