Я считаю, что вам нужно передать URI места хранения (файла) через намерение takePictureIntent , используя
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, your_image_Uri);
Затем вы можете открыть файл и извлечь его в байт [] и хранить его как блоб. Удобство SQLiteDatase, метод insert делает это очень простым.
например. если предположить, что byte [] имеет имя my_picture, то
ContentValues cv = new ContentValues();
cv.put(column_name_for_picture,my_picture);
long id = insert("the_table_name",null,cv);
Вы извлекаете сохраненную картинку из БД, используя метод запроса SQLiteDatabase , а затем извлекаете байт []. используя метод курсора getBlob .
Если размер изображения составляет 2 МБ или больше, вы не сможете получить его , так как для CursorWindow существует ограничение 2 МБ (1 МБ для более старых версий Android) ). Я бы предположил, что даже на 1 МБ у вас могут возникнуть проблемы с извлечением изображений.
Рекомендуется не хранить изображение в базе данных, а хранить путь к файлу, в котором изображение хранится в базе данных.
Возможно, вы захотите взглянуть на Как использовать изображения в Android SQLite, которые больше, чем ограничения CursorWindow? , поскольку это показывает обходной путь , хотя НЕ рекомендуется . [+1112]
csproj или vbproj файлы являются только msbuild XML-файлами, которые были бы использованы msbuild.exe
. Эти XML-файлы придерживаются msbuild схемы а именно: Microsoft.Build.xsd
.
При поиске этой информации, чтобы программно разорваться через некоторые vbproj файлы, Вы, вероятно, захотите смотреть на Microsoft.Build.Engine.dll
. Ссылка на этот компонент предоставляет Вам доступ к объектной модели MSBuild, которая может использоваться, чтобы считать и управлять файлами MSBuild (который csproj и vbproj файлы).
Смотрите на этот код. Это содержит простой синтаксический анализатор для решений VS и csproj файлов. Vbproj не должен очень отличаться, таким образом, необходимо смочь расширить его для потребностей. Это лицензируется в соответствии с лицензией MIT.