Example usage for android.os SystemClock uptimeMillis

List of usage examples for android.os SystemClock uptimeMillis

Introduction

In this page you can find the example usage for android.os SystemClock uptimeMillis.

Prototype

@CriticalNative
native public static long uptimeMillis();

Source Link

Document

Returns milliseconds since boot, not counting time spent in deep sleep.

Usage

From source file:de.vanita5.twittnuker.util.Utils.java

public static void stopListView(final AbsListView list) {
    if (list == null)
        return;/*  w w w.  java  2s .co  m*/
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
        list.dispatchTouchEvent(MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(),
                MotionEvent.ACTION_CANCEL, 0, 0, 0));
    } else {
        list.dispatchTouchEvent(MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(),
                MotionEvent.ACTION_DOWN, 0, 0, 0));
        list.dispatchTouchEvent(MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(),
                MotionEvent.ACTION_UP, 0, 0, 0));
    }
}

From source file:g7.bluesky.launcher3.Launcher.java

/**
 * Add the views for a widget to the workspace.
 *
 * Implementation of the method from LauncherModel.Callbacks.
 *//*from  w  w w . j a  v  a  2s  .c o  m*/
public void bindAppWidget(final LauncherAppWidgetInfo item) {
    Runnable r = new Runnable() {
        public void run() {
            bindAppWidget(item);
        }
    };
    if (waitUntilResume(r)) {
        return;
    }

    final long start = DEBUG_WIDGETS ? SystemClock.uptimeMillis() : 0;
    if (DEBUG_WIDGETS) {
        Log.d(TAG, "bindAppWidget: " + item);
    }
    final Workspace workspace = mWorkspace;

    AppWidgetProviderInfo appWidgetInfo;
    if (!mIsSafeModeEnabled && ((item.restoreStatus & LauncherAppWidgetInfo.FLAG_PROVIDER_NOT_READY) == 0)
            && ((item.restoreStatus & LauncherAppWidgetInfo.FLAG_ID_NOT_VALID) != 0)) {

        appWidgetInfo = mModel.findAppWidgetProviderInfoWithComponent(this, item.providerName);
        if (appWidgetInfo == null) {
            if (DEBUG_WIDGETS) {
                Log.d(TAG, "Removing restored widget: id=" + item.appWidgetId + " belongs to component "
                        + item.providerName + ", as the povider is null");
            }
            LauncherModel.deleteItemFromDatabase(this, item);
            return;
        }
        // Note: This assumes that the id remap broadcast is received before this step.
        // If that is not the case, the id remap will be ignored and user may see the
        // click to setup view.
        PendingAddWidgetInfo pendingInfo = new PendingAddWidgetInfo(appWidgetInfo, null, null);
        pendingInfo.spanX = item.spanX;
        pendingInfo.spanY = item.spanY;
        pendingInfo.minSpanX = item.minSpanX;
        pendingInfo.minSpanY = item.minSpanY;
        Bundle options = AppsCustomizePagedView.getDefaultOptionsForWidget(this, pendingInfo);

        int newWidgetId = mAppWidgetHost.allocateAppWidgetId();
        boolean success = mAppWidgetManager.bindAppWidgetIdIfAllowed(newWidgetId, appWidgetInfo, options);

        // TODO consider showing a permission dialog when the widget is clicked.
        if (!success) {
            mAppWidgetHost.deleteAppWidgetId(newWidgetId);
            if (DEBUG_WIDGETS) {
                Log.d(TAG, "Removing restored widget: id=" + item.appWidgetId + " belongs to component "
                        + item.providerName + ", as the launcher is unable to bing a new widget id");
            }
            LauncherModel.deleteItemFromDatabase(this, item);
            return;
        }

        item.appWidgetId = newWidgetId;

        // If the widget has a configure activity, it is still needs to set it up, otherwise
        // the widget is ready to go.
        item.restoreStatus = (appWidgetInfo.configure == null) ? LauncherAppWidgetInfo.RESTORE_COMPLETED
                : LauncherAppWidgetInfo.FLAG_UI_NOT_READY;

        LauncherModel.updateItemInDatabase(this, item);
    }

    if (!mIsSafeModeEnabled && item.restoreStatus == LauncherAppWidgetInfo.RESTORE_COMPLETED) {
        final int appWidgetId = item.appWidgetId;
        appWidgetInfo = mAppWidgetManager.getAppWidgetInfo(appWidgetId);
        if (DEBUG_WIDGETS) {
            Log.d(TAG, "bindAppWidget: id=" + item.appWidgetId + " belongs to component "
                    + appWidgetInfo.provider);
        }

        item.hostView = mAppWidgetHost.createView(this, appWidgetId, appWidgetInfo);
    } else {
        appWidgetInfo = null;
        PendingAppWidgetHostView view = new PendingAppWidgetHostView(this, item, mIsSafeModeEnabled);
        view.updateIcon(mIconCache);
        item.hostView = view;
        item.hostView.updateAppWidget(null);
        item.hostView.setOnClickListener(this);
    }

    item.hostView.setTag(item);
    item.onBindAppWidget(this);

    workspace.addInScreen(item.hostView, item.container, item.screenId, item.cellX, item.cellY, item.spanX,
            item.spanY, false);
    addWidgetToAutoAdvanceIfNeeded(item.hostView, appWidgetInfo);

    workspace.requestLayout();

    if (DEBUG_WIDGETS) {
        Log.d(TAG,
                "bound widget id=" + item.appWidgetId + " in " + (SystemClock.uptimeMillis() - start) + "ms");
    }
}