Tôi có một ứng dụng bàn phím cho Android mà tôi đang phát triển và nó xuất ra các ký hiệu đơn giản thay vì ngôn ngữ, vì vậy, tôi rất muốn có thể theo dõi hoạt động của người dùng vì không có thông tin nhạy cảm hoặc các từ liên quan.getDefaultTracker() từ một lớp mở rộng InputMethodService?
Vấn đề là Android của InputMethodService
không không mở rộng Application
, đó là những gì cho phép bạn truy cập vào Android SDK (lỗi từ ngữ có thể, ở đây, cảm thấy tự do để chính xác cho tôi) của Google Analytics.
Tôi đã theo hướng dẫn here để bắt đầu, và đây là đoạn code tôi tham khảo để có được các đối tượng Tracker
:
/*
* Copyright Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.google.samples.quickstart.analytics;
import android.app.Application;
import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;
/**
* This is a subclass of {@link Application} used to provide shared objects for this app, such as
* the {@link Tracker}.
*/
public class AnalyticsApplication extends Application {
private Tracker mTracker;
/**
* 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;
}
}
Đây là tất cả tuyệt vời để theo dõi hoạt động chính ứng dụng của tôi, mà là về cơ bản chỉ một chế độ xem chứa tập hợp các hướng dẫn ngắn với một vài quảng cáo và lối tắt cài đặt. Như tôi đã nói trước đây, tôi muốn theo dõi bàn phím và cách thực hiện điều đó không rõ ràng vì InputMethodService
không hiển thị Google Analytics.
Tôi làm cách nào để sử dụng Google Analytics Android SDK bên trong một lớp mở rộng InputMethodService
nhưng không phải là Application
?
Vui lòng cho tôi biết nếu tôi chưa giải quyết rõ vấn đề của mình, tôi sẽ cập nhật bài đăng bất kỳ cách nào tôi có thể.
Tuyệt vời, tôi sẽ chụp ảnh này. Bạn có bất kỳ ý tưởng nào tại sao ví dụ bắt đầu nhanh đề xuất sử dụng lớp trình bao bọc để truy cập vào 'Trình theo dõi' không? – Kehlan
Tôi nghĩ bởi vì nó sẽ là giải pháp tốt nhất trong hầu hết các trường hợp. Tôi vừa cập nhật câu trả lời của mình để cố gắng làm rõ. –