2

アプリケーションのインストール時に、アプリケーションを実行しているデバイスのSDカードにディレクトリを作成したいのですが、その方法がわかりません。インストール時にディレクトリを作成する方法について誰かがアイデアを持っていますか?助けてくれてありがとう。

4

3 に答える 3

10

スニル、

これはインストール時に実行できませんが、最初の実行時に実行できます...

onCreate()これは、最初のメソッドに以下を追加することで実行できますActivity

if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
        Log.d("MyApp", "No SDCARD");
} else {
    File directory = new File(Environment.getExternalStorageDirectory()+File.separator+"MyAppFolder");
    directory.mkdirs();
}

幸運を!

于 2011-03-15T13:28:09.563 に答える
3

インストール時にできないことはおそらく正しいですが、これを行う方法はあります。つまり、独自のアプリケーションクラスを作成し、アプリケーションのonCreateメソッドでコードを記述した場合、onCreateメソッドはアプリケーションの作成時にのみ呼び出されるため、アプリケーションを起動するたびに冗長なチェックを減らすことができます。

次のように実装できます

public class MyApplication extends Application {
    @Override
    public void onCreate(){
        super.onCreate();
        if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
        Log.d("MyApp", "No SDCARD");
        } 
        else {
            File directory = new File(Environment.getExternalStorageDirectory()+File.separator+"MyAppFolder");
           directory.mkdirs();
    }
}

そして、menifestファイルで言及することでそれを使用することができます

<application android:name=".MyApplication" android:icon="@drawable/icon" android:label="@string/app_name">
......
</application>
于 2011-04-05T09:06:03.443 に答える
0

良い一日。SharedPreferencesを使用できるもう1つのヒント。方法は次のとおりです。

  1. 1回限りのアクティビティを作成する(ロゴ画面、ウェルカム画面など)
  2. そのアクティビティに、目的のディレクトリとフォルダのみを作成するコードを貼り付けます
  3. 1回限りのアクティビティと次の一致するアクティビティに共有設定を実装します(Googleのドキュメントを参照)
  4. 共有設定を確認して、1回限りのアクティビティが初めて開始されたかどうかを確認し、そのアクティビティをスキップできます。これがお役に立てば幸いです。
于 2014-12-25T05:40:36.870 に答える