タグ

ブックマーク / techbooster.org (2)

  • マルチユーザ対応 Android 4.2以降の内部ストレージと外部ストレージ | TechBooster

    getFilesDirで取得できるPath以下にファイルを作成する。第1引数にファイル名、第2引数にアクセスモードを指定(MODE_PRIVATEが一般的)する。 ActivityクラスのgetFilesDirメソッド、getCacheDirメソッドを使うと端末で指定されているアプリケーション専用のデータ領域を取得できます。 ログにパスを出力するだけの簡単なサンプルコードを用意しました。実行してマルチユーザ時の挙動を確認してみましょう。 //アプリケーション専用データ領域 //ファイル保存ディレクトリ Log.d("Multi", " getFilesDir(): " + getFilesDir()); //キャッシュ保存ディレクトリ(消去される可能性あり) Log.d("Multi", " getCacheDir(): " + getCacheDir()); ※ちなみにCacheDirは

    マルチユーザ対応 Android 4.2以降の内部ストレージと外部ストレージ | TechBooster
    none53
    none53 2012/11/26
  • リフレクションをつかってメソッドを呼び出す | TechBooster

    Javaにはreflectionと呼ばれる機能があります。クラスからフィールド、メソッド情報を取得するためのインターフェイスです。 取得したメソッドは実行でき、Androidではhideメソッドを使う際に応用出来ます。当然ながら、Android SDKのAPIとして公開されていないhideメソッドを使うことはリスクを伴います。 引数が変わったり、急に無くなってりするかもしれません(サポート対象外なので当然ですね)。 また、リフレクションを使って属性を変更し、Privateメソッド/フィールドにアクセスすることもできるため、こちらはUnitTestのときに威力を発揮します。 リフレクションを使う reflectionはjava.lang.reflectパッケージとしてサポートされており、動的に実行するメソッドを変えることも出来るので大変便利な機能です。 ただし、記事の内容を使ってhideA

    リフレクションをつかってメソッドを呼び出す | TechBooster
  • 1