Java Code Examples for android.app.Activity#getClass()

The following examples show how to use android.app.Activity#getClass() . These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: EasyPhotos   File: PuzzleActivity.java    License: Apache License 2.0 6 votes vote down vote up
public static void startWithPhotos(Activity act, ArrayList<Photo> photos, int requestCode, boolean replaceCustom, @NonNull ImageEngine imageEngine) {
    if (null != toClass) {
        toClass.clear();
        toClass = null;
    }
    if (Setting.imageEngine != imageEngine) {
        Setting.imageEngine = imageEngine;
    }
    Intent intent = new Intent(act, PuzzleActivity.class);
    intent.putExtra(Key.PUZZLE_FILE_IS_PHOTO, true);
    intent.putParcelableArrayListExtra(Key.PUZZLE_FILES, photos);
    if (replaceCustom) {
        toClass = new WeakReference<Class<? extends Activity>>(act.getClass());
    }
    act.startActivityForResult(intent, requestCode);
}
 
Example 2
/**
 * Check for classes with @FoamDontTrack annotation.
 * @param activity Check if this activity should be tracked.
 * @return true if Activity does not have FoamDontTrack (on class on any of the methods)
 */
boolean shouldTrack(Activity activity) {
    if(wifiOnly && !utils.isOnWifi(context)){
        return false;
    } else if(activity!=null){
        Class<? extends Activity> clazz = activity.getClass();
        if(clazz.isAnnotationPresent(FoamDontTrack.class)){
            return false;
        } else {
            for (Method method : clazz.getMethods()) {
                if(method.isAnnotationPresent(FoamDontTrack.class)){
                    return false;
                }
            }
        }
    }
    return true;
}
 
Example 3
Source Project: UltimateAndroid   File: DefaultAppLock.java    License: Apache License 2.0 6 votes vote down vote up
@Override
public void onActivityResumed(Activity arg0) {

    if( arg0.getClass() == PasscodeUnlockActivity.class )
        return;

   if(  ( this.appLockDisabledActivities != null ) && Arrays.asList(this.appLockDisabledActivities).contains( arg0.getClass().getName() ) )
	   return;

    if(mustShowUnlockSceen()) {
        //uhhh ohhh!
        Intent i = new Intent(arg0.getApplicationContext(), PasscodeUnlockActivity.class);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        arg0.getApplication().startActivity(i);
        return;
    }

}
 
Example 4
Source Project: rosetta   File: LocalesUtils.java    License: MIT License 6 votes vote down vote up
/**
 * Refreshing the application so no weired results occurred after changing the locale.
 */
static void refreshApplication(Activity activity) {

    Intent app = activity.getBaseContext().getPackageManager()
            .getLaunchIntentForPackage(activity.getBaseContext().getPackageName());
    app.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK);

    Intent current = new Intent(activity, activity.getClass());
    sLogger.debug("Refreshing the application: " +
            activity.getBaseContext().getPackageName());

    sLogger.debug("Finishing current activity.");
    activity.finish();

    sLogger.debug("Start the application");
    activity.startActivity(app);
    activity.startActivity(current);

    sLogger.debug("Application refreshed");
}
 
Example 5
public static boolean ensureUnlocked(Activity a) {
    SharedPreferences prefs
     = PreferenceManager
       .getDefaultSharedPreferences(a.getApplicationContext());
    
    boolean done
     = prefs.getString("com.notriddle.budget.pin", "").equals("")
       || prefs.getBoolean("com.notriddle.budget.unlocked", false);

    if (!done) {
        Intent i = new Intent(a, PinActivity.class);
        Intent j = new Intent(a.getApplicationContext(), a.getClass());
        //j.setData(a.getIntent().getData());
        //j.setAction(a.getIntent().getAction());
        j.putExtras(a.getIntent());
        PendingIntent pJ = PendingIntent.getActivity(a.getApplicationContext(), 0, j, PendingIntent.FLAG_UPDATE_CURRENT);
        Log.d("Budget", "pJ="+pJ);
        i.putExtra("com.notriddle.budget.NEXT_ACTIVITY",
                   (Parcelable)pJ);
        a.startActivity(i);
    } else {
        notify(a);
    }

    return done;
}
 
Example 6
Source Project: narrate-android   File: DefaultAppLock.java    License: Apache License 2.0 6 votes vote down vote up
@Override
public void onActivityResumed(Activity arg0) {

    if( arg0.getClass() == PasscodeUnlockActivity.class )
        return;

   if(  ( this.appLockDisabledActivities != null ) && Arrays.asList(this.appLockDisabledActivities).contains( arg0.getClass().getName() ) )
	   return;

    if(mustShowUnlockSceen()) {
        //uhhh ohhh!
        Intent i = new Intent(arg0.getApplicationContext(), PasscodeUnlockActivity.class);
        i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        arg0.getApplication().startActivity(i);
        return;
    }

}
 
Example 7
/**
 * Setup the recognition of nfc tags when the activity is opened (foreground)
 *
 * @param activity The corresponding {@link Activity} requesting the foreground dispatch.
 * @param adapter The {@link NfcAdapter} used for the foreground dispatch.
 */
public static void setupForegroundDispatch(final Activity activity, NfcAdapter adapter) {
    final Intent intent = new Intent(activity.getApplicationContext(), activity.getClass());
    intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);

    final PendingIntent pendingIntent = PendingIntent.getActivity(activity.getApplicationContext(), 0, intent, 0);

    IntentFilter[] filters = new IntentFilter[1];
    String[][] techList = new String[][]{};

    // Filter for nfc tag discovery
    filters[0] = new IntentFilter();
    filters[0].addAction(NfcAdapter.ACTION_TAG_DISCOVERED);
    filters[0].addCategory(Intent.CATEGORY_DEFAULT);

    adapter.enableForegroundDispatch(activity, pendingIntent, filters, techList);
}
 
Example 8
/**
 * Helper method to recreate the Activity. This method should be called after a Locale change.
 * @param activity the Activity that will be recreated
 * @param animate a flag indicating if the recreation will be animated or not
 */
public static void recreate(Activity activity, boolean animate) {
    Intent restartIntent = new Intent(activity, activity.getClass());

    Bundle extras = activity.getIntent().getExtras();
    if (extras != null) {
        restartIntent.putExtras(extras);
    }

    if (animate) {
        ActivityCompat.startActivity(
                activity,
                restartIntent,
                ActivityOptionsCompat
                        .makeCustomAnimation(activity, android.R.anim.fade_in, android.R.anim.fade_out)
                        .toBundle()
        );
    } else {
        activity.startActivity(restartIntent);
        activity.overridePendingTransition(0, 0);
    }

    activity.finish();

}
 
Example 9
@Override
public boolean onPreferenceChange(@NonNull Preference pref, Object newValue) {

    if ("language".equals(pref.getKey()) || "digits".equals(pref.getKey())) {
        if ("language".equals(pref.getKey()))
            Preferences.LANGUAGE.set((String) newValue);
        Activity act = getActivity();
        act.finish();
        Intent i = new Intent(act, act.getClass());
        i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
        act.startActivity(i);

        Answers.getInstance().logCustom(new CustomEvent("Language").putCustomAttribute("lang", (String) newValue));
    }
    return true;
}
 
Example 10
Source Project: Jide-Note   File: MyActivityManager.java    License: MIT License 5 votes vote down vote up
public void finishActivity(Class c){
    for(Activity activity : activities){
        if(activity.getClass() == c) {
            activity.finish();
            activities.remove(activity);
            LogUtils.e("remove Activity");
        }
    }
}
 
Example 11
Source Project: android-advanced-decode   File: Restarter.java    License: MIT License 5 votes vote down vote up
public static void restartApp(Context appContext,
		Collection<Activity> knownActivities, boolean toast) {
	if (!knownActivities.isEmpty()) {
		Activity foreground = getForegroundActivity(appContext);
		if (foreground != null) {
			if (toast) {
				showToast(foreground,
						"Restarting app to apply incompatible changes");
			}
			if (Log.isLoggable("InstantRun", 2)) {
				Log.v("InstantRun", "RESTARTING APP");
			}
			Context context = foreground;
			Intent intent = new Intent(context, foreground.getClass());
			int intentId = 0;
			PendingIntent pendingIntent = PendingIntent.getActivity(
					context, intentId, intent, 268435456);

			AlarmManager mgr = (AlarmManager) context
					.getSystemService("alarm");
			mgr.set(1, System.currentTimeMillis() + 100L, pendingIntent);
			if (Log.isLoggable("InstantRun", 2)) {
				Log.v("InstantRun", "Scheduling activity " + foreground
						+ " to start after exiting process");
			}
		} else {
			showToast((Activity) knownActivities.iterator().next(),
					"Unable to restart app");
			if (Log.isLoggable("InstantRun", 2)) {
				Log.v("InstantRun",
						"Couldn't find any foreground activities to restart for resource refresh");
			}
		}
		System.exit(0);
	}
}
 
Example 12
private static Reflector.ActionBarType searchForActivitySuperClass(Activity activity) {
    Class currentLevel = activity.getClass();
    while (currentLevel != Activity.class) {
        if (currentLevel.getSimpleName().equals("SherlockActivity") || currentLevel.getSimpleName().equals("SherlockFragmentActivity")) {
            return Reflector.ActionBarType.ACTIONBAR_SHERLOCK;
        }
        if (currentLevel.getSimpleName().equals("ActionBarActivity")) {
            return Reflector.ActionBarType.APP_COMPAT;
        }
        currentLevel = currentLevel.getSuperclass();
    }
    return Reflector.ActionBarType.STANDARD;
}
 
Example 13
Source Project: MTransition   File: MTranstionUtil.java    License: Apache License 2.0 5 votes vote down vote up
private static void saveAnimtaion(Activity activity) {
    Class clazz = activity.getClass();
    if (!sAnimationMap.containsKey(clazz)) {
        int animtaion = activity.getWindow().getAttributes().windowAnimations;
        sAnimationMap.put(clazz, animtaion);
    }
}
 
Example 14
Source Project: MTransition   File: MTranstionUtil.java    License: Apache License 2.0 5 votes vote down vote up
private static void restoreAnimtaion(Activity activity) {
    Class clazz = activity.getClass();
    if (sAnimationMap.containsKey(clazz)) {
        int animtaion = sAnimationMap.get(clazz);
        activity.getWindow().setWindowAnimations(animtaion);
        sAnimationMap.remove(clazz);
    }
}
 
Example 15
/**
 * Attempt to restart the app. Ideally this should also try to preserve as much state as
 * possible:
 * <ul>
 *     <li>The current activity</li>
 *     <li>If possible, state in the current activity, and</li>
 *     <li>The activity stack</li>
 * </ul>
 *
 * This may require some framework support. Apparently it may already be possible
 * (Dianne says to put the app in the background, kill it then restart it; need to
 * figure out how to do this.)
 */
public static void restartApp(Context appContext,
                              Collection<Activity> knownActivities,
                              boolean toast) {
    if (!knownActivities.isEmpty()) {
        // Can't live patch resources; instead, try to restart the current activity
        Activity foreground = getForegroundActivity(appContext);
        if (foreground != null) {
            // http://stackoverflow.com/questions/6609414/howto-programatically-restart-android-app
            //noinspection UnnecessaryLocalVariable
            if (toast) {
                showToast(foreground, "Restarting app to apply incompatible changes");
            }
            if (Log.isLoggable(LOG_TAG, Log.VERBOSE)) {
                Log.v(LOG_TAG, "RESTARTING APP");
            }
            @SuppressWarnings("UnnecessaryLocalVariable") // fore code clarify
                    Context context = foreground;
            Intent intent = new Intent(context, foreground.getClass());
            int intentId = 0;
            PendingIntent pendingIntent = PendingIntent.getActivity(context, intentId,
                    intent, PendingIntent.FLAG_CANCEL_CURRENT);
            AlarmManager mgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
            mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 100, pendingIntent);
            if (Log.isLoggable(LOG_TAG, Log.VERBOSE)) {
                Log.v(LOG_TAG, "Scheduling activity " + foreground
                        + " to start after exiting process");
            }
        } else {
            showToast(knownActivities.iterator().next(), "Unable to restart app");
            if (Log.isLoggable(LOG_TAG, Log.VERBOSE)) {
                Log.v(LOG_TAG, "Couldn't find any foreground activities to restart " +
                        "for resource refresh");
            }
        }
        System.exit(0);
    }
}
 
Example 16
Source Project: hipda   File: Utils.java    License: GNU General Public License v2.0 5 votes vote down vote up
public static void restartActivity(Activity activity) {
    ColorHelper.clear();
    activity.finish();
    Intent intent = new Intent(activity.getApplicationContext(), activity.getClass());
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
    activity.startActivity(intent);
    activity.overridePendingTransition(0, 0);
    System.exit(0);
}
 
Example 17
private static Reflector.ActionBarType searchForActivitySuperClass(Activity activity) {
    Class currentLevel = activity.getClass();
    while (currentLevel != Activity.class) {
        if (currentLevel.getSimpleName().equals("SherlockActivity") || currentLevel.getSimpleName().equals("SherlockFragmentActivity")) {
            return Reflector.ActionBarType.ACTIONBAR_SHERLOCK;
        }
        if (currentLevel.getSimpleName().equals("ActionBarActivity")) {
            return Reflector.ActionBarType.APP_COMPAT;
        }
        currentLevel = currentLevel.getSuperclass();
    }
    return Reflector.ActionBarType.STANDARD;
}
 
Example 18
Source Project: DevUtils   File: ActivityUtils.java    License: Apache License 2.0 4 votes vote down vote up
/**
 * 结束多个类名 Activity
 * @param clazzs Class(Activity)[]
 * @return {@link ActivityUtils}
 */
public ActivityUtils finishActivity(final Class<?>... clazzs) {
    if (clazzs != null && clazzs.length != 0) {
        synchronized (mActivityStacks) {
            // 保存新的堆栈, 防止出现同步问题
            Stack<Activity> stack = new Stack<>();
            stack.addAll(mActivityStacks);
            // 清空全部, 便于后续操作处理
            mActivityStacks.clear();
            // 判断是否销毁
            boolean isRemove;
            // 进行遍历移除
            Iterator<Activity> iterator = stack.iterator();
            while (iterator.hasNext()) {
                Activity activity = iterator.next();
                // 判断是否想要关闭的 Activity
                if (activity != null) {
                    // 默认不需要销毁
                    isRemove = false;
                    // 循环判断
                    for (int i = 0, len = clazzs.length; i < len; i++) {
                        // 判断是否相同
                        if (activity.getClass() == clazzs[i]) {
                            isRemove = true;
                            break;
                        }
                    }
                    // 判断是否销毁
                    if (isRemove) {
                        // 如果 Activity 没有 finish 则进行 finish
                        if (!activity.isFinishing()) {
                            activity.finish();
                        }
                        // 删除对应的 Item
                        iterator.remove();
                    }
                } else {
                    // 删除对应的 Item
                    iterator.remove();
                }
            }
            // 把不符合条件的保存回去
            mActivityStacks.addAll(stack);
            // 移除数据, 并且清空内存
            stack.clear();
            stack = null;
        }
    }
    return this;
}
 
Example 19
Source Project: KUtils   File: ErrorDialogManager.java    License: Apache License 2.0 4 votes vote down vote up
/** Scope is limited to the activity's class. */
public static void attachTo(Activity activity, boolean finishAfterDialog, Bundle argumentsForErrorDialog) {
    Object executionScope = activity.getClass();
    attachTo(activity, executionScope, finishAfterDialog, argumentsForErrorDialog);
}
 
Example 20
Source Project: narrate-android   File: DefaultAppLock.java    License: Apache License 2.0 3 votes vote down vote up
@Override
public void onActivityPaused(Activity arg0) {

    if( arg0.getClass() == PasscodeUnlockActivity.class )
        return;

    if( ( this.appLockDisabledActivities != null ) && Arrays.asList(this.appLockDisabledActivities).contains( arg0.getClass().getName() ) )
 	   return;

    lostFocusDate = new Date();

}