/** * Copyright 2016 JustWayward Team * <p> * 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 * <p> * http://www.apache.org/licenses/LICENSE-2.0 * <p> * 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.justwayward.reader.utils; import android.content.Context; import android.content.res.AssetManager; import android.content.res.Resources; import android.os.Handler; import android.os.Looper; public class AppUtils { private static Context mContext; private static Thread mUiThread; private static Handler sHandler = new Handler(Looper.getMainLooper()); public static void init(Context context) { mContext = context; mUiThread = Thread.currentThread(); } public static Context getAppContext() { return mContext; } public static AssetManager getAssets() { return mContext.getAssets(); } public static Resources getResource() { return mContext.getResources(); } public static boolean isUIThread() { return Thread.currentThread() == mUiThread; } public static void runOnUI(Runnable r) { sHandler.post(r); } public static void runOnUIDelayed(Runnable r, long delayMills) { sHandler.postDelayed(r, delayMills); } public static void removeRunnable(Runnable r) { if (r == null) { sHandler.removeCallbacksAndMessages(null); } else { sHandler.removeCallbacks(r); } } }