2016-03-10 4 views
0

Я пытаюсь сделать это, когда пользователь запускает приложение в первый раз, новая новая папка создается в разделе Галерея телефона и не дублируется каждый раз, когда приложение запускается. Я просмотрел некоторые ответы здесь, но большинство из них либо запутывают, либо устарели. Пожалуйста, помогите кому-нибудь?Создание новой галереи в Android при первом запуске приложения

Я попытался следующие, но это не похоже на работу:

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_profile); 
     final File root = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + File.separator + "MyNewFolderName" + File.separator) 
}; 

Я также включил эту линию в AndroidManifext.xml:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

+0

этот вопрос находится в Android 6? –

+0

Я тестирую 5.1.1. – blueprintChris

+1

. Ответ Beyond Budius, обратите внимание, что сам каталог может не отображаться в проводниках файлов в течение некоторого времени, особенно если каталог пуст, из-за способа [внешнего хранилища] (https://commonsware.com/blog/2014/04/08/storage-situation-external-storage.html). Однако каталог будет существовать, и вы можете начать размещать изображения там. – CommonsWare

ответ

4

вы были так так близко к ответ:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_profile); 
    // this line creates reference to a folder that might or not exist, but does not create 
    File root = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + File.separator + "MyNewFolderName" + File.separator) 
    root.mkdirs(); // this line creates the folder 
}; 

также, если вы используете это на Marshmallow (android 6), вы должны сначала спросить разрешение на запись на хранение, вы можете прочитать здесь о запросе разрешения. http://developer.android.com/training/permissions/index.html

+0

Я предполагаю, что это создаст его только один раз и только один раз? – blueprintChris

+0

Спасибо, это сработало для меня! – blueprintChris

Смежные вопросы