Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
#1

Яндекс.Диск API - Программирование Android

18.02.2014, 13:48. Просмотров 1823. Ответов 6
Метки нет (Все метки)

Работал кто-нибудь с этим API? Запускаю дефолтный пример яндекса, и при авторизации через браузер показывает вот это:

Никто не сталкивался с такой проблемой?
0
Миниатюры
Яндекс.Диск API  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2014, 13:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Яндекс.Диск API (Программирование Android):

Реализация Яндекс SpeechKit Cloud API - Программирование Android
Добрый день! Пытаюсь встроить в своё приложение распознование речи от яндекса. У меня получилось прикрутить к нему SpeechKit SDK, но как...

Яндекс карты и Яндекс MapKit - Программирование Android
Передо мной стоят такие задачи: показать карту, на ней показать маркеры на определенных координатах, построить маршрут между задаными...

Android SDK Manager не отображает платформы 2.3.3 (API 10), 2.3.1 (API 9). Как быть? - Программирование Android
Добрый день! Использую Android Studio под Windows 7. Из-за несовместимости с операционной системой Android SDK Manager не отображает...

Android Studio не дает работать с API 8 без установленного API 21 - Программирование Android
Удалил все не интересующие меня библиотеки и поставил только API Level 8. Но при создании приложения вылезает куча ошибок таких как: Что...

Ошибка minSDK(API 23, N preview) != deviceSDK(API 17) - Программирование Android
Недавно начал учить андроид и возникла такая ошибка, когда я пытаюсь запустить проект на своем телефоне или эмуляторе. При этом в проекте...

Яндекс Карты - Программирование Android
Доброго времени суток! Хотел бы узнать как использовать Яндекс.карты в своем проекте, а также навигацию по картам, но чтобы это работало в...

6
angryrobot
Командир зеленых роботов
348 / 285 / 53
Регистрация: 08.10.2013
Сообщений: 564
18.02.2014, 13:57 #2
Цитата Сообщение от KillAndEat Посмотреть сообщение
Никто не сталкивался с такой проблемой?
Скорее всего забыли прописать в манифесте интент-фильтр для вашей активити.
Или прописали но не такой какой надо (не совпадает с вашим Callback URI который вы указывали при регистрации нового приложения в яндксе).
0
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
18.02.2014, 15:17  [ТС] #3
Цитата Сообщение от angryrobot Посмотреть сообщение
Скорее всего забыли прописать в манифесте интент-фильтр для вашей активити.
Или прописали но не такой какой надо (не совпадает с вашим Callback URI который вы указывали при регистрации нового приложения в яндксе).
Это же пример Яндекса, все должно совпадать) Дело в том, что раньше регистрация проходила, а сейчас перестал. Хотя аккаунт я с телефона удалил.
0
angryrobot
Командир зеленых роботов
348 / 285 / 53
Регистрация: 08.10.2013
Сообщений: 564
18.02.2014, 15:53 #4
Цитата Сообщение от KillAndEat Посмотреть сообщение
Это же пример Яндекса, все должно совпадать
Покажите манифест приложения, и скажите какой вы указали Callback URI.
0
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
18.02.2014, 16:21  [ТС] #5
Манифест

Кликните здесь для просмотра всего текста
XML
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
27
28
29
30
31
32
33
34
35
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.yandex.disk.sdk.example"
          android:versionCode="1"
          android:versionName="1.0">
 
    <uses-sdk android:minSdkVersion="11"
              android:targetSdkVersion="17"/>
 
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
    <uses-permission android:name="android.permission.USE_CREDENTIALS"/>
 
    <application android:label="@string/app_name"
                 android:icon="@drawable/ic_launcher"
                 android:name=".Application"
                 android:hardwareAccelerated="true">
 
        <activity android:name=".ExampleActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.BROWSABLE" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="yandexdisk" />
            </intent-filter>
        </activity>
 
    </application>
 
</manifest>


Callback URI не могу посмотреть так как акrаунт за яндексом зарегистрирован, но предполагаю что он http://localhost
0
angryrobot
Командир зеленых роботов
348 / 285 / 53
Регистрация: 08.10.2013
Сообщений: 564
18.02.2014, 23:13 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от KillAndEat Посмотреть сообщение
Callback URI не могу посмотреть так как акrаунт за яндексом зарегистрирован, но предполагаю что он http://localhost
Судя по вашему манифесту, он должен быть yandexdisk://чтоугодно в противном случае ничего работать не будет. Есть два пути решения вашей проблемы:

1) Регистрируйте свой аккаунт и сделайте в нем нормальный Callback URI. Нормальный это например такой:
имяВашегоПриложения://чтоугодно/
Затем в манифесте меняете строчку
XML
1
<data android:scheme="yandexdisk" />
на
XML
1
<data android:scheme="имяВашегоПриложения" />
И всё начинает работать.


2) Этот вариант нужно использовать если аккаунт не ваш, и изменить Callback URI вы не можете. Чтоб всё заработало нужно заменить строчку
XML
1
<data android:scheme="yandexdisk" />
на строчку
XML
1
<data android:host="localhost" android:scheme="http" />
Но после установки вашего приложения, ссылка http://localhost будет открываться либо в браузере либо в вашем приложении. Это может заставить пользователей изрыгать проклятия в ваш адрес Поэтому этот вариант плохой, но для отладки пойдет.
1
KillAndEat
63 / 63 / 8
Регистрация: 17.05.2013
Сообщений: 286
19.02.2014, 12:16  [ТС] #7
Спасибо! Вы очень помогли!

Дабы не создавать новую тему про API облачных хранилищ задам вопрос в этом топике.

Разбирался с Dropbox Datastore API и столкнулся со следующей проблемой.

При попытке получить экземпляр DbxAccountManager

Java
1
DbxAccountManager mDbxAcctMgr = DbxAccountManager.getInstance(getApplicationContext(), appKey, appSecret);
вылетает следующее исключение:

Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Thread [<1> main] (Suspended (exception ExceptionInInitializerError))   
    <VM does not provide monitor information>   
    DbxAccountManager.getInstance(Context, DbxConfig, CoreConfig$Hosts, CoreAccountManager$AccountStorageProvider) line: 158    
    DbxAccountManager.getInstance(Context, String, String) line: 116    
    MainActivity.onCreate(Bundle) line: 19  
    MainActivity(Activity).performCreate(Bundle) line: 5008 
    Instrumentation.callActivityOnCreate(Activity, Bundle) line: 1079   
    ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 2041    
    ActivityThread.handleLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 2102 
    ActivityThread.access$600(ActivityThread, ActivityThread$ActivityClientRecord, Intent) line: 133    
    ActivityThread$H.handleMessage(Message) line: 1208  
    ActivityThread$H(Handler).dispatchMessage(Message) line: 99 
    Looper.loop() line: 137 
    ActivityThread.main(String[]) line: 4765    
    Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]  
    Method.invoke(Object, Object...) line: 511  
    ZygoteInit$MethodAndArgsCaller.run() line: 791  
    ZygoteInit.main(String[]) line: 558 
    NativeStart.main(String[]) line: not available [native method]


Причем это происходит и в примерах Dropbox и в моих поделках)
0
19.02.2014, 12:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2014, 12:16
Привет! Вот еще темы с ответами:

Ошибка с яндекс картой - Программирование Android
Добрый день. Нам создали анлроид приложение. В нем есть раздел контакты, в который встроена яндекс-карта с адресом офиса. Изначально...

Переход с Google на Яндекс карты - Программирование Android
Приветствую, Такой вопрос, есть исходники буржуйского приложения (свободнораспространяемое) которое использует Google карты, хочу...

Ошибка при запуске Яндекс Карт - Программирование Android
Здравствуйте, пытаюсь разобраться с работой Яндекс карт. По примеру скачал и подключил библиотеку API Yandex Map Kit c гитхаба к новому...

Яндекс. Магазин - альтернативный маркет Android - Программирование Android
Вот и наши взялись, за высокие технологии. Регистрация пока бесплатна. Так что налетай, как говориться, пока горячее. ...


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

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

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