

Денис
05.05.2018
08:41:15
Привет всем, нужна помощь, уже 2 дня бьюсь с ошибкой
Делаю фото, сохраняю на устройстве, получаю путь к файлу, декодирую его в строку так:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] imageBytes = baos.toByteArray();
String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
Засовываю encodedImage в JSONObject, превращаю всё это в строку, отправляю через OkHTTP вот так:
OkHttpClient client = new OkHttpClient();
RequestBody body = new FormBody.Builder()
.add("req", str)
.build();
Request request = new Request.Builder()
.url("myServlet")
.header("Content-Type", "application/x-www-form-urlencoded; charset=utf-8")
.post(body)
.build();
Response response = client.newCall(request).execute()
И вот тут вылетает Exception: java.net.SocketException: sendto failed: EPIPE (Broken pipe)
Причем до этого делал всё так же только вместо полного фото получал thumbnail и всё нормально отправлялось, может ли это юыть из-за размера?
Кто-нибудь сталкивался? уже все мозги себе вынес


Askar
05.05.2018
08:42:22


Quantum Harmonizer
05.05.2018
08:43:45
Привет всем, нужна помощь, уже 2 дня бьюсь с ошибкой
Делаю фото, сохраняю на устройстве, получаю путь к файлу, декодирую его в строку так:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] imageBytes = baos.toByteArray();
String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
Засовываю encodedImage в JSONObject, превращаю всё это в строку, отправляю через OkHTTP вот так:
OkHttpClient client = new OkHttpClient();
RequestBody body = new FormBody.Builder()
.add("req", str)
.build();
Request request = new Request.Builder()
.url("myServlet")
.header("Content-Type", "application/x-www-form-urlencoded; charset=utf-8")
.post(body)
.build();
Response response = client.newCall(request).execute()
И вот тут вылетает Exception: java.net.SocketException: sendto failed: EPIPE (Broken pipe)
Причем до этого делал всё так же только вместо полного фото получал thumbnail и всё нормально отправлялось, может ли это юыть из-за размера?
https://stackoverflow.com/a/14624314/3050249


Like
05.05.2018
08:44:16

Google

Askar
05.05.2018
08:44:25
да

Like
05.05.2018
08:44:52
и пермишен на инетик стоит? (мало ли)

Askar
05.05.2018
08:45:39
канеш) другие урлы норм грузятся.
без JS автобуса как на картинке нет)

Денис
05.05.2018
08:47:14
https://stackoverflow.com/a/14624314/3050249
Еще б понять что тут написано, читал уже, а почему пир закрывается то во время отправки? Получается проблема всё таки в размере? Может тогда мультипартом попробовать отправить?

Quantum Harmonizer
05.05.2018
08:47:41

Like
05.05.2018
08:47:57

Денис
05.05.2018
08:52:24

Quantum Harmonizer
05.05.2018
08:52:54

Денис
05.05.2018
08:55:53

Quantum Harmonizer
05.05.2018
08:56:05

Денис
05.05.2018
08:56:49
а сервлет — не часть сервера?
Часть, но на сервере очень много сервлетов да и доступа конкретно у меня нет к серверу, как можно тогда его прописать?

Quantum Harmonizer
05.05.2018
08:57:22

Google

Quantum Harmonizer
05.05.2018
08:57:34

Денис
05.05.2018
08:57:52

Quantum Harmonizer
05.05.2018
08:58:00
Понял, спасибо
by the way, base64 увеличивает размер картинки процентов на 30

Денис
05.05.2018
08:58:35
А как вообще правильно отправлять фото с андроида на сервер?

Quantum Harmonizer
05.05.2018
08:59:14

Денис
05.05.2018
09:00:43

Quantum Harmonizer
05.05.2018
09:00:56

Денис
05.05.2018
09:01:14

Quantum Harmonizer
05.05.2018
09:02:09

Денис
05.05.2018
09:02:24

Dmitry
05.05.2018
09:06:34
Кто сталкивался с Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/support/appcompat-v7/27.0.2/appcompat-v7-27.0.2.pom'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/support/appcompat-v7/27.0.2/appcompat-v7-27.0.2.pom'.
> dl.google.com:443 failed to respond
С недавнего времени, видимо из за блокировок. Прокси не помагает. Это при начальной синхронизации проекта

FRD Official - Dmitriy
05.05.2018
09:08:21
И не кодируй в Base64 - по спеке http пост это и так base64

Quantum Harmonizer
05.05.2018
09:09:27

FRD Official - Dmitriy
05.05.2018
09:09:51
А то что ты делаешь - это raw постинг, если сервер ожидает обычный мультипарт аплоад - он его просто не разжует

Jonik
05.05.2018
09:15:32
Всем привет!
Есть БД Sqlite с таблицей CookBook
Она открывается, но при попытке достать данные, пишет SQLiteException: no such table: CookBook (code 1)
Вот как я вызываю:
SQLiteDatabase db = this.getReadableDatabase();
String selectQuery = "SELECT * FROM CookBook WHERE category=\'" + type + "\';";
Cursor cursor = db.rawQuery(selectQuery, null);
В чём могут быть траблы?

Askar
05.05.2018
09:15:58
мб туда в параметры надо чего то напихать, по типу размера фрейма
добавил метод в webViewClient
@Override
public void onLoadResource(WebView view, String url) {
super.onLoadResource(view, url);
}
и до упарывания дебажил и смотрел подозрительные урлы, которые грузятся. один из них --
http://95.57.220.2:8080/bus/img/bus.gif ? хз почему вебвью именно его отображает

ARDEV
05.05.2018
09:20:42

FRD Official - Dmitriy
05.05.2018
09:23:45

Google

FRD Official - Dmitriy
05.05.2018
09:24:49
Но мультипарт ему точно нужен

Quantum Harmonizer
05.05.2018
09:25:08

RVTexnolog
05.05.2018
09:29:48

FRD Official - Dmitriy
05.05.2018
09:37:28
почему, зачем?
Потому что у него сервер ждет мультипарта, понимал бы raw post отдал бы ошибку 413, а так он у него в лоб соединение закрывает

Quantum Harmonizer
05.05.2018
09:38:10

FRD Official - Dmitriy
05.05.2018
09:38:55
Больше на ум ничео не приходит. Да и не любят движки raw - посты, их очень трудно роутить

Quantum Harmonizer
05.05.2018
09:39:41

Рома
05.05.2018
09:47:44
Есть такой кейс:
хочу сделать extensions функцию для try catch (catchAll) и вынести ее в файл Extensions.kt. В catch'e есть TAG для логирования. Можно как-то в поле TAG взять имя файла/класса, в котором вызвалась функция catchAll?

Albus Drumbledore
05.05.2018
09:49:05
в чем ошибка

Quantum Harmonizer
05.05.2018
09:49:36

FRD Official - Dmitriy
05.05.2018
09:49:46
почему? они же на определённый урл делаются
В случае с мультипартом сборку файла на себя берет http-сервер (не фрэймворк), потому что он после первого чанка знает что за метод вызван, а в случае с raw - пока весь пэйлоад не примется - никто ничего не знает и метод выделять нужно на уровне фрэймворка из здоровущего шматка. Так же если при загрузке произошла ошибка - http сервер просто закрывает соединение. Поэтому у большинства http серваков есть два параметра max payload size и max post size, первый ограничивает общий размер запроса, а второй ограничивает размеры того, что из этого запроса удалось вычленить. Как то так. Возможно малость сумбурно

Quantum Harmonizer
05.05.2018
09:50:12

Рома
05.05.2018
09:50:59

Quantum Harmonizer
05.05.2018
09:51:25


Daru
05.05.2018
09:56:00
Ребята-котята, что скажете о курсах от гикбрейнс по андроиду?
Там есть от майлсру за 15к/мес и от самих гиков за 9к/мес, оба на полгода.
Кто-нибудь проходил? Стоит оно того?
Или всё то же самое можно и в более сжатые сроки изучить?
(а то там по 1-2 занятию в неделю, это как-то несерьёзно что ли)
*мимо заканчиваю универ, но думаю послать специальность нахуй и вкатиться в погромирование*

FRD Official - Dmitriy
05.05.2018
10:04:02

Konstantin
05.05.2018
10:04:26

Quantum Harmonizer
05.05.2018
10:04:57

FRD Official - Dmitriy
05.05.2018
10:05:12
И фрагментацией

Quantum Harmonizer
05.05.2018
10:05:17

Google

FRD Official - Dmitriy
05.05.2018
10:05:49
Он на http уровне на чанки порезан
фрагменты то бишь

Quantum Harmonizer
05.05.2018
10:06:14

FRD Official - Dmitriy
05.05.2018
10:07:19

Quantum Harmonizer
05.05.2018
10:09:09

Daru
05.05.2018
10:24:12

Artem
05.05.2018
10:33:20
блин, придумывай проект, любой и начинай пилить, к 10му будешь уже норм ковыряться. архитектурные подходы с GitHub бери, реализации со stackoverflow. фундаментальные основы с startandroid

Konstantin
05.05.2018
10:35:10
Ну и основы java посмотри вдруг пригодится

Quantum Harmonizer
05.05.2018
10:37:23
...точнее, начни с изучения Java. С каких-нибудь CLI-поделок.

Artem
05.05.2018
10:40:58
Но у меня была идея аппки моей и я всеми силами начал делать её, а там по ходу уже разбирался как и что

Константин
05.05.2018
10:43:40
Привет. Сейчас регистрация в Samsung Partners Portal бесплатная? Это в тему Samsung Pay

Danya
05.05.2018
11:21:15
К тому же у огромного количества смартов есть наэкранные кнопки снизу, на них тоже все случайно нажимают?

FRD Official - Dmitriy
05.05.2018
11:29:44

Danya
05.05.2018
11:37:06

.
05.05.2018
11:40:26

FRD Official - Dmitriy
05.05.2018
11:40:41

.
05.05.2018
11:40:59

FRD Official - Dmitriy
05.05.2018
11:41:07
Туда палец загнуть - очень тяжко

Google

Arsen
05.05.2018
11:45:52
как например приложение в гугл плей загрузить?

Konstantin
05.05.2018
11:47:15
Как обычно

Andrey
05.05.2018
12:02:54
ребят, может кто-нибудь знает, как можно у context menu поменять background?

balolam
05.05.2018
12:03:47
Через тему

Andrey
05.05.2018
12:05:17
в теме popupBackground не отрабатывает