Android関連 >

他アプリケーションのContextを取得する(Android)

他アプリの Context を取得する

アプリケーションで定義されたリソース(文言や画像)等は、基本的にそのアプリの Context からしか取得できないが、
Context.createPackageContext で対象アプリの Context を取得する事によって、他アプリのリソースを利用する事ができる。

例)

package example.utils;

import android.content.Context;

public class ContextUtil {

    public static Context getOtherContext(Context context, String package, int flags){
        return context.createPackageContext(package, flags);
    }
}

※ packageには対象のアプリケーションの パッケージ名を指定する。

flags に指定する値は以下の通り。

flagsに指定できる値説明
Context.CONTEXT_INCLUDE_CODEコンテキストとともにアプリケーションコードをインクルードする。
これは、getClassLoader() を使用してアプリケーションのクラスをインスタンス化できるように、コードを呼び出し側のプロセスにロードすることを意味します。
Context.CONTEXT_IGNORE_SECURITY特定の機能を無効にする。たとえば、制限されたコンテキストに関連付けられたビューは、特定のXML属性を無視します
Context.CONTEXT_RESTRICTED要求されているコンテキストのセキュリティ制限を無視し、常にロードできるようにします。


参考


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-06-10 (土) 02:11:32 (2505d)