С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
SPRINK
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 6
#1

Отправка фотографий на стену пользователя. VK API - Программирование Android

23.05.2016, 20:10. Просмотров 530. Ответов 1
Метки нет (Все метки)

Добрый день.
Не могу разобраться с отправлением постов на стену юзера Вконтакте, который залогиниться через мое приложение.
По примеру, который в SDK лежит, сделал отправку сообщений на стену.

А вот с отправкой фотографий на стену не могу разобраться. Код тупо взял из примера, но все равно не работает. По нажатию кнопки вылетает ошибка:
Код
05-23 12:56:36.923 29075-29075/comid13077732.httpvk.timetofriends E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                    Process: comid13077732.httpvk.timetofriends, PID: 29075
                                                                                    java.lang.NullPointerException
                                                                                        at com.vk.sdk.api.photo.VKUploadImage.getTmpFile(VKUploadImage.java:71)
                                                                                        at com.vk.sdk.api.photo.VKUploadWallPhotoRequest.<init>(VKUploadWallPhotoRequest.java:53)
                                                                                        at com.vk.sdk.api.VKApi.uploadWallPhotoRequest(VKApi.java:120)
                                                                                        at comid13077732.httpvk.timetofriends.ThirdActivity$2.onClick(ThirdActivity.java:70)
                                                                                        at android.view.View.performClick(View.java:4438)
                                                                                        at android.view.View$PerformClick.run(View.java:18422)
                                                                                        at android.os.Handler.handleCallback(Handler.java:733)
                                                                                        at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                                        at android.os.Looper.loop(Looper.java:136)
                                                                                        at android.app.ActivityThread.main(ActivityThread.java:5017)
                                                                                        at java.lang.reflect.Method.invokeNative(Native Method)
                                                                                        at java.lang.reflect.Method.invoke(Method.java:515)
                                                                                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
                                                                                        at dalvik.system.NativeStart.main(Native Method)
Но приложение продолжает работать.
Вот куски с VK SDK:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 {
                final Bitmap photo = getPhoto();
                VKRequest request1 = VKApi.uploadWallPhotoRequest(new VKUploadImage(photo, VKImageParameters.jpgImage(0.9f)), 0, TARGET_GROUP);
                VKRequest request2 = VKApi.uploadWallPhotoRequest(new VKUploadImage(photo, VKImageParameters.jpgImage(0.5f)), 0, TARGET_GROUP);
                VKRequest request3 = VKApi.uploadWallPhotoRequest(new VKUploadImage(photo, VKImageParameters.jpgImage(0.1f)), 0, TARGET_GROUP);
                VKRequest request4 = VKApi.uploadWallPhotoRequest(new VKUploadImage(photo, VKImageParameters.pngImage()), 0, TARGET_GROUP);
 
                VKBatchRequest batch = new VKBatchRequest(request1, request2, request3, request4);
                batch.executeWithListener(new VKBatchRequest.VKBatchRequestListener() {
                    @Override
                    public void onComplete(VKResponse[] responses) {
                        super.onComplete(responses);
                        recycleBitmap(photo);
                        VKAttachments attachments = new VKAttachments();
                        for (VKResponse response : responses) {
                            VKApiPhoto photoModel = ((VKPhotoArray) response.parsedModel).get(0);
                            attachments.add(photoModel);
                        }
                        makePost(attachments,"Check"); //makePost(attachments)
                    }
                    @Override
                    public void onError(VKError error) {
                        showError(error);
                    }
                });
            }
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 private Bitmap getPhoto() {
                try {
                    return BitmapFactory.decodeStream(this.getAssets().open("Android.jpg"));
                } catch (IOException e) {
                    e.printStackTrace();
                    return null;
                }
            }
 
            private static void recycleBitmap(@Nullable final Bitmap bitmap) {
                if (bitmap != null) {
                    bitmap.recycle();
                }
            }
Правда в этой строчке, вместо this было getActivity, но он его не находил, загуглив, понял, что можно и this использовать
Java
1
return BitmapFactory.decodeStream(this.getAssets().open("Android.jpg"));
И еще не понимаю, как вызывается открытие галереи для выбора фоток? Или это уже встроено в VK SDK

Яву только изучаю.

Делаю в Android Studio
Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2016, 20:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Отправка фотографий на стену пользователя. VK API (Программирование Android):

Facebook api. Отправка личного сообщения - Программирование Android
Здравствуйте. Не получается создать запрос на отправку личного сообщения пользователю. Пробовал гуглить искать информацию, но нашёл...

Отправка смс без участия пользователя - Программирование Android
Вроде такое не возможно? А с рут правами?

vk api, отправка фотографий в альбом - PHP
Здравствуйте, уважаемые пользователи. Возникла проблема. Кто имел опыт работы с vk api помогите пожалуйста. Загрузка фоток состоит из...

VK API Как оставить запись на стену группы от лица авторизованного пользователя API VK и javascript sdk? - JavaScript
Возможно ли данную конструкцию переделать так, чтобы запись отправлялась на стену сообщества, а не авторизованного пользователя, но также...

VK API Загрузка фотографий в альбом пользователя - C#
Доброй ночи, кому-то уже дня... Пытаюсь загрузить фотографию в альбом к себе. Как известно, загрузка проходит в 3 этапа. 1. С...

VK API Запись на стену пользователя - PHP
Добрый день программисты, проблема такая, токен получаю делаю запрос на запись стену пользователя которй залогинился через вконтакте ...

1
SPRINK
0 / 0 / 0
Регистрация: 03.06.2014
Сообщений: 6
31.05.2016, 18:50  [ТС] #2
Разобрался, ошибка вылетает из за того, что фотка не выбрана, сама фотка берется из папки assets.
переделал, теперь фотка берется из ImageView
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2016, 18:50
Привет! Вот еще темы с ответами:

Отправка сообщений на стену ВК idHtt - Delphi
Нужно научить программу отправлять сообщения на стену группы по указанной ссылке на группу. Для этого использую следующий код function...

Отправить собщение на стену Вконтакте VK API - C#
Доброе время суток, форумчане! Прошу вашей помощи! У меня такая задача: есть форма в ней есть кнопка, необходимо по клику этой кнопки...

API Vkontakte загрузка изображений на стену - Delphi
похоже я злостно туплю ( проблема в сабже, на сайте вконтакта есть описание процесса 1. С помощью метода wall.getPhotoUploadServer...

Загрузка фотографии на стену через Vk Api - PHP
Моя задача - реализовать загрузку картинки на стену группы. Я следую пошагово инструкциям вот отсюда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.