Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a437457c authored by Ray Essick's avatar Ray Essick Committed by Android (Google) Code Review
Browse files

Merge "Change from mediaanalytics to mediametrics"

parents b9c28c72 d38e174d
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -52,14 +52,6 @@ public:
    // caller continues to own the passed item
    virtual MediaAnalyticsItem::SessionID_t submit(MediaAnalyticsItem *item, bool forcenew) = 0;


    // return lists of records that match the supplied parameters.
    // finished [or not] records since time 'ts' with key 'key'
    // timestamp 'ts' is nanoseconds, unix time.
    // caller responsible for deallocating returned data structures
    virtual List<MediaAnalyticsItem *> *getMediaAnalyticsItemList(bool finished, int64_t ts) = 0;
    virtual List<MediaAnalyticsItem *> *getMediaAnalyticsItemList(bool finished, int64_t ts, MediaAnalyticsItem::Key key) = 0;

};

// ----------------------------------------------------------------------------
+0 −67
Original line number Diff line number Diff line
@@ -50,7 +50,6 @@ namespace android {
enum {
    GENERATE_UNIQUE_SESSIONID = IBinder::FIRST_CALL_TRANSACTION,
    SUBMIT_ITEM,
    GET_ITEM_LIST,
};

class BpMediaAnalyticsService: public BpInterface<IMediaAnalyticsService>
@@ -115,45 +114,6 @@ public:
        return sessionid;
    }

    virtual List<MediaAnalyticsItem*> *getMediaAnalyticsItemList(bool finished, nsecs_t ts)
    {
            return getMediaAnalyticsItemList(finished, ts, MediaAnalyticsItem::kKeyAny);
    }

    virtual List<MediaAnalyticsItem*> *getMediaAnalyticsItemList(bool finished, nsecs_t ts, MediaAnalyticsItem::Key key)
    {
        Parcel data, reply;
        status_t err;

        data.writeInterfaceToken(IMediaAnalyticsService::getInterfaceDescriptor());
        data.writeInt32(finished);
        data.writeInt64(ts);
        const char *str = key.c_str();
        if (key.empty()) {
            str = MediaAnalyticsItem::kKeyNone.c_str();
        }
        data.writeCString(str);
        err = remote()->transact(GET_ITEM_LIST, data, &reply);
        if (err != NO_ERROR) {
            return NULL;
        }

        // read a count
        int32_t count = reply.readInt32();
        List<MediaAnalyticsItem*> *list = NULL;

        if (count > 0) {
            list = new List<MediaAnalyticsItem*>();
            for (int i=0;i<count;i++) {
                MediaAnalyticsItem *item = new MediaAnalyticsItem();
                // XXX: watch for failures here
                item->readFromParcel(reply);
                list->push_back(item);
            }
        }

        return list;
    }
};

IMPLEMENT_META_INTERFACE(MediaAnalyticsService, "android.media.IMediaAnalyticsService");
@@ -204,33 +164,6 @@ status_t BnMediaAnalyticsService::onTransact(
            return NO_ERROR;
        } break;

        case GET_ITEM_LIST: {
            CHECK_INTERFACE(IMediaPlayerService, data, reply);
            // get the parameters
            bool finished = data.readInt32();
            nsecs_t ts = data.readInt64();
            MediaAnalyticsItem::Key key = data.readCString();

            // find the (0 or more) items
            List<MediaAnalyticsItem*> *list =  getMediaAnalyticsItemList(finished, ts, key);
            // encapsulate/serialize them
            reply->writeInt32(list->size());
            if (list->size() > 0) {
                    for (List<MediaAnalyticsItem*>::iterator it = list->begin();
                         it != list->end(); it++) {
                            (*it)->writeToParcel(reply);
                    }


            }

            // avoid leakiness; organized discarding of list and its contents
            list->clear();
            delete list;

            return NO_ERROR;
        } break;

        default:
            return BBinder::onTransact(code, data, reply, flags);
    }
+10 −8
Original line number Diff line number Diff line
@@ -49,15 +49,15 @@ namespace android {
const MediaAnalyticsItem::Key MediaAnalyticsItem::kKeyAny  = "any";
const MediaAnalyticsItem::Key MediaAnalyticsItem::kKeyNone  = "none";

const char * const MediaAnalyticsItem::EnabledProperty  = "media.analytics.enabled";
const char * const MediaAnalyticsItem::EnabledPropertyPersist  = "persist.media.analytics.enabled";
const char * const MediaAnalyticsItem::EnabledProperty  = "media.metrics.enabled";
const char * const MediaAnalyticsItem::EnabledPropertyPersist  = "persist.media.metrics.enabled";
const int MediaAnalyticsItem::EnabledProperty_default  = 0;


// access functions for the class
MediaAnalyticsItem::MediaAnalyticsItem()
    : mPid(0),
      mUid(0),
    : mPid(-1),
      mUid(-1),
      mSessionID(MediaAnalyticsItem::SessionIDNone),
      mTimestamp(0),
      mFinalized(0),
@@ -67,8 +67,8 @@ MediaAnalyticsItem::MediaAnalyticsItem()
}

MediaAnalyticsItem::MediaAnalyticsItem(MediaAnalyticsItem::Key key)
    : mPid(0),
      mUid(0),
    : mPid(-1),
      mUid(-1),
      mSessionID(MediaAnalyticsItem::SessionIDNone),
      mTimestamp(0),
      mFinalized(0),
@@ -92,6 +92,9 @@ void MediaAnalyticsItem::clear() {
    // clean allocated storage from key
    mKey.clear();

    // clean various major parameters
    mSessionID = MediaAnalyticsItem::SessionIDNone;

    // clean attributes
    // contents of the attributes
    for (size_t i = 0 ; i < mPropSize; i++ ) {
@@ -646,7 +649,6 @@ int32_t MediaAnalyticsItem::writeToParcel(Parcel *data) {
}



AString MediaAnalyticsItem::toString() {

    AString result = "(";
@@ -763,7 +765,7 @@ bool MediaAnalyticsItem::isEnabled() {

//static
sp<IMediaAnalyticsService> MediaAnalyticsItem::getInstance() {
    static const char *servicename = "media.analytics";
    static const char *servicename = "media.metrics";
    static int tries_remaining = SVC_TRIES;
    int enabled = isEnabled();

+0 −44
Original line number Diff line number Diff line
LOCAL_PATH:= $(call my-dir)

#
# libmediaanalyticsservice
#

include $(CLEAR_VARS)

LOCAL_SRC_FILES:=               \
    MediaAnalyticsService.cpp      \

LOCAL_SHARED_LIBRARIES :=       \
    libbinder                   \
    libcutils                   \
    liblog                      \
    libdl                       \
    libgui                      \
    libmedia                    \
    libmediautils               \
    libstagefright_foundation   \
    libutils

LOCAL_EXPORT_SHARED_LIBRARY_HEADERS := libmedia

LOCAL_C_INCLUDES :=                                                 \
    $(TOP)/frameworks/av/media/libstagefright/include               \
    $(TOP)/frameworks/av/media/libstagefright/rtsp                  \
    $(TOP)/frameworks/av/media/libstagefright/wifi-display          \
    $(TOP)/frameworks/av/media/libstagefright/webm                  \
    $(TOP)/frameworks/av/include/media                              \
    $(TOP)/frameworks/av/include/camera                             \
    $(TOP)/frameworks/native/include/media/openmax                  \
    $(TOP)/frameworks/native/include/media/hardware                 \
    $(TOP)/external/tremolo/Tremolo                                 \
    libcore/include                                                 \

LOCAL_CFLAGS += -Werror -Wno-error=deprecated-declarations -Wall
LOCAL_CLANG := true

LOCAL_MODULE:= libmediaanalyticsservice

include $(BUILD_SHARED_LIBRARY)

include $(call all-makefiles-under,$(LOCAL_PATH))
+29 −14
Original line number Diff line number Diff line
@@ -5,28 +5,43 @@ LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_SRC_FILES:= \
	main_mediaanalytics.cpp
    main_mediametrics.cpp          \
    MediaAnalyticsService.cpp

LOCAL_SHARED_LIBRARIES := \
    libcutils                   \
    liblog                      \
    libmedia                    \
	libmediaanalyticsservice \
    libutils                    \
    libbinder                   \
	libicuuc
    libdl                       \
    libgui                      \
    libmedia                    \
    libmediautils               \
    libstagefright_foundation   \
    libutils

LOCAL_STATIC_LIBRARIES := \
        libicuandroid_utils \
        libregistermsext

LOCAL_C_INCLUDES :=                                                 \
    frameworks/av/media/libmediaanalyticsservice
    $(TOP)/frameworks/av/media/libstagefright/include               \
    $(TOP)/frameworks/av/media/libstagefright/rtsp                  \
    $(TOP)/frameworks/av/media/libstagefright/wifi-display          \
    $(TOP)/frameworks/av/media/libstagefright/webm                  \
    $(TOP)/frameworks/av/include/media                              \
    $(TOP)/frameworks/av/include/camera                             \
    $(TOP)/frameworks/native/include/media/openmax                  \
    $(TOP)/frameworks/native/include/media/hardware                 \
    $(TOP)/external/tremolo/Tremolo                                 \
    libcore/include


LOCAL_MODULE:= mediaanalytics
LOCAL_MODULE:= mediametrics

LOCAL_INIT_RC := mediaanalytics.rc
LOCAL_INIT_RC := mediametrics.rc

LOCAL_CFLAGS := -Werror -Wall
LOCAL_CFLAGS := -Werror -Wall -Wno-error=deprecated-declarations
LOCAL_CLANG := true

include $(BUILD_EXECUTABLE)
Loading