下面列出了android.app.Application#getApplicationContext ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private synchronized static Context recoverAppContextOldAndroid()
{
try
{
final Class<?> activityThreadClass = Class.forName( "android.app.ActivityThread" );
final Method method = activityThreadClass.getMethod( "currentActivityThread" );
Object activityThread = method.invoke( null, (Object[]) null );
final Field field = activityThreadClass.getDeclaredField( "mInitialApplication" );
field.setAccessible( true );
Application app = (Application) field.get( activityThread );
return app.getApplicationContext();
}
catch ( Throwable e )
{
e.printStackTrace();
}
return null;
}
/** Warmup activities that should only happen once. */
@SuppressFBWarnings("DM_EXIT")
private static void initializeBrowser(final Application app) {
ThreadUtils.assertOnUiThread();
try {
ChromeBrowserInitializer.getInstance(app).handleSynchronousStartupWithGpuWarmUp();
} catch (ProcessInitException e) {
Log.e(TAG, "ProcessInitException while starting the browser process.");
// Cannot do anything without the native library, and cannot show a
// dialog to the user.
System.exit(-1);
}
final Context context = app.getApplicationContext();
ChildProcessLauncher.warmUp(context);
ChromeBrowserInitializer.initNetworkChangeNotifier(context);
WarmupManager.getInstance().initializeViewHierarchy(
context, R.layout.custom_tabs_control_container, R.layout.custom_tabs_toolbar);
}
/** Warmup activities that should only happen once. */
@SuppressFBWarnings("DM_EXIT")
private static void initializeBrowser(final Application app) {
ThreadUtils.assertOnUiThread();
try {
ChromeBrowserInitializer.getInstance(app).handleSynchronousStartup();
} catch (ProcessInitException e) {
Log.e(TAG, "ProcessInitException while starting the browser process.");
// Cannot do anything without the native library, and cannot show a
// dialog to the user.
System.exit(-1);
}
final Context context = app.getApplicationContext();
final ChromeApplication chrome = (ChromeApplication) context;
ChildProcessCreationParams.set(chrome.getChildProcessCreationParams());
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
ChildProcessLauncher.warmUp(context);
return null;
}
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
ChromeBrowserInitializer.initNetworkChangeNotifier(context);
WarmupManager.getInstance().initializeViewHierarchy(
context, R.layout.custom_tabs_control_container, R.layout.custom_tabs_toolbar);
}
/** Warmup activities that should only happen once. */
@SuppressFBWarnings("DM_EXIT")
private static void initializeBrowser(final Application app) {
ThreadUtils.assertOnUiThread();
try {
ChromeBrowserInitializer.getInstance(app).handleSynchronousStartup();
} catch (ProcessInitException e) {
Log.e(TAG, "ProcessInitException while starting the browser process.");
// Cannot do anything without the native library, and cannot show a
// dialog to the user.
System.exit(-1);
}
final Context context = app.getApplicationContext();
final ChromeApplication chrome = (ChromeApplication) context;
ChildProcessCreationParams.set(chrome.getChildProcessCreationParams());
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
ChildProcessLauncher.warmUp(context);
return null;
}
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
ChromeBrowserInitializer.initNetworkChangeNotifier(context);
WarmupManager.getInstance().initializeViewHierarchy(
context, R.layout.custom_tabs_control_container);
}
/**
* Entry point into this API.
*
* Registers shaky to the current application.
*/
@NonNull
public static Shaky with(@NonNull Application application,
@NonNull ShakeDelegate delegate,
@Nullable ShakyFlowCallback callback) {
Shaky shaky = new Shaky(application.getApplicationContext(), delegate, callback);
LifecycleCallbacks lifecycleCallbacks = new LifecycleCallbacks(shaky);
application.registerActivityLifecycleCallbacks(lifecycleCallbacks);
return shaky;
}
public ZrtpCacheDB(Application acc, ZrtpLogger l) {
logger = l;
OpenHelper openHelper = new OpenHelper(
acc.getApplicationContext(), logger);
this.database = openHelper.getWritableDatabase();
this.insertStmt = this.database.compileStatement(INSERT);
}
public void init(Application application) {
Utils.init(application);
mContext = application.getApplicationContext();
QPMSortManager.getInstance().init();
QPMModeManager.getInstance().init();
QPMSwitchManager.getInstance().init();
QPMRAnalysisManager.getInstance().start(mContext, Process.myPid(), mContext.getPackageName());
}
@Inject
public GoogleApiManager(
Application app,
GoogleApiAvailability googleApiAvailability,
ActivityStreams activityStreams) {
this.context = app.getApplicationContext();
this.googleApiAvailability = googleApiAvailability;
this.activityStreams = activityStreams;
}
/**
* 初始化
* @param application
* @param isApplyImmediate 是否立刻生效
*/
public void init(Application application, boolean isApplyImmediate) {
if (application == null)
return;
isInited = true;
mContext = application.getApplicationContext();
mAndroidSkinManager = new AndroidSkinManager(application.getApplicationContext());
if (isApplyImmediate)
mAndroidSkinManager.loadSkinIfApply();
AndroidSkinHook.getInstance().registerActivityLife(application);
}
/**
* Constructor
* @param application the running application
*/
public GeoPackageRepository(@NonNull Application application) {
context = application.getApplicationContext();
manager = GeoPackageFactory.getManager(application);
active.setValue(new GeoPackageDatabases(context, "active"));
geos.setValue(new GeoPackageDatabases(context, "all"));
}
/**
* 初始化库
*
* @param isDebug 是否打印日志
* @param TAG 日志TAG
* @param context application
*/
public static void init(@NonNull boolean isDebug, @NonNull String TAG, @NonNull Application context) {
android.util.Log.d(TAG_, "==============您使用的KUtils版本:2.4.2==============");
if (TAG == null || context == null) throw new RuntimeException("KUtilLibs 初始化参数均不能为空");
appContext = context.getApplicationContext();
if (isDebug) Log.init(TAG, true);//开启日志打印
DialogUIUtils.init(appContext);
OkGo.getInstance().init(context);
}
public BaseViewModel(Application application) {
super(application);
mContext = application.getApplicationContext();
injectDependencies();
if (mDataRepository == null) {
throw new IllegalStateException("Dependencies not fulfilled for this ViewModel.");
}
}
@Override
public void onAppCreate(Application application) {
appContext = application.getApplicationContext();
initLog();
initStorage();
initRepository();
initLeanCloud();
initBugly();
initUmengShare();
}
@Provides
@Singleton
public FavoritesService providesFavoritesService(Application application) {
return new FavoritesService(application.getApplicationContext());
}
@Inject
public PermissionsManager(Application app, ActivityStreams activityStreams) {
context = app.getApplicationContext();
this.activityStreams = activityStreams;
}
public static void init(Application application) {
context = application.getApplicationContext();
}
@Provides @Singleton @ApplicationContext Context provideApplicationContext(
Application application) {
return application.getApplicationContext();
}
public AppModule(Application application) {
this.context = application.getApplicationContext();
}
@Provides
@Singleton
Context provideContext(Application application) {
return application.getApplicationContext();
}
public static void setApplication(Application application) {
sApplication = application;
sContext = application.getApplicationContext();
}