Я разрабатываю проект Android с Android-движком, используя плагин eclipse. Один из аспектов приложения - позволить пользователю Alpha отправлять фотографии пользователю Bravo. Для этого у меня есть следующая настройка:
Пользовательская публикация альфа:
- отправить изображение на сервер приложений через конечные точки
- сервер хранит изображение в хранилище blob.
- сервер хранит blobkey в хранилище данных
Пользователь Bravo получает:
- сервер получает blobkey из хранилища данных
- сервер получает изображение с помощью клавиши blob
- сервер отправляет изображение в приложение Android с помощью конечных точек
Эта настройка занимает два (2) минуты, когда мое приложение Android отправляет изображение, когда я вижу его в язве blob. Излишне говорить, что это совершенно неприемлемо.
Мой сервер обрабатывает изображение программно, используя следующий код:
public static BlobKey toBlobstore(Blob imageData) throws FileNotFoundException, FinalizationException, LockException, IOException {
if (null == imageData)
return null;
// Get a file service
FileService fileService = FileServiceFactory.getFileService();
// Create a new Blob file with mime-type "image/png"
AppEngineFile file = fileService.createNewBlobFile("image/jpeg");// png
// Open a channel to write to it
boolean lock = true;
FileWriteChannel writeChannel = fileService.openWriteChannel(file, lock);
// This time we write to the channel directly
writeChannel.write(ByteBuffer.wrap
(imageData.getBytes()));
// Now finalize
writeChannel.closeFinally();
return fileService.getBlobKey(file);
}
Кто-нибудь знает, как я могу либо приспособить официальный пример для использования конечных точек (в случае, когда я должен использовать экземпляры приложений для приложения), либо использовать getServingUrl
(минуя мои экземпляры), чтобы хранить и обслуживать мои капли?
Пожалуйста, вместо слов, введите код. Спасибо.