Два приложения имеют одинаковый sharedUserId. Когда я использую этот код в app1Напишите файл личного доступа в каталог файлов другого приложения
context.openFileOutput("/data/data/org.me.app2/files/shared-data.dat", MODE_PRIVATE)
Я получаю исключение, сообщая мне, что файл содержит разделитель путей.
Я пытаюсь записать файл из приложения 1 в хранилище app2. (Я, конечно, нужно, чтобы убедиться, что каталог файлов app2 в существует первая)
В идеале, я хотел бы написать к конкретному пользователю каталога вместо определенного каталога приложений, но я не знаю, если это может быть сделано
Но как я могу сказать, что app1 должен написать файл в app2? – 2010-11-30 21:23:06
Это обычно обескураживает. Вы никогда не должны писать в личное хранилище другого приложения! MODE_PRIVATE специально не принесет вам много пользы - данные даже не будут доступны для чтения другим приложением! Если вам действительно нужно, используйте «Файл», чтобы указать абсолютный путь. Но похоже, что вы используете неправильный подход для начала. – EboMike 2010-11-30 21:24:51
Прежде всего (я думаю) MODE_PRIVATE будет работать, потому что я использую тот же sharedUserId. Во-вторых, я планировал записывать общие данные в оба приложения. Важно, чтобы неизвестные приложения не имели доступа к общим данным. – 2010-11-30 21:28:11