2013-04-08 3 views
6

Любые идеи, почему я получаю эту ошибку, когда я вызываю getSession().startAuthentication() для Android Dropbox SDK?Настройка манифеста Android Dropbox SDK

: FATAL EXCEPTION: main 
: java.lang.IllegalStateException: URI scheme in your app's manifest is not set up correctly. You should have a com.dropbox.client2.android.AuthActivity with the scheme: db-CHANGE_ME 

Но мой AndroidManifest.xml имеет следующий в <Application></Application>, как указано в инструкции Getting Started.

<activity 
    android:name="com.dropbox.client2.android.AuthActivity" 
    android:launchMode="singleTask" 
    android:configChanges="orientation|keyboard"> 
    <intent-filter> 
    <!-- Change this to be db- followed by your app key --> 
    <data android:scheme="db-MYKEYISHERE" /> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.BROWSABLE"/> 
    <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

ответ

6

Если вы на самом деле видим «дб -CHANGE_ME "(т. Е. Это не местозаполнитель, который вы использовали для скрытия вашего ключа приложения), то это означает, что вы не обновили ключ приложения в Java-коде вашего приложения. Это сообщение об ошибке выводит ключ, который был предоставлен в коде Java, и ожидает, что он будет соответствовать ключу в манифесте.

Ваша чистая сборка, возможно, выбрала некоторые изменения Java, которые ранее не были построены.

1

Понятия не имею, почему это должно быть так, но проект чистый сделал трюк (я добавил код для манифеста дней назад и очищено несколько раз с тех пор)

5

Для тех, кто сталкивается с этой проблемой, если вы похожи на меня, вы можете не обращать внимание на мелочи, взглянем на манифеста:

<intent-filter> 
    <data android:scheme="db-APP_KEY" /> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
</intent-filter> 

Вы не должны заменить всю строку db-APP_KEY с ваш ключ приложения, вы должны оставить db- там db-{HERE YOUR APP KEY} Я знаю, что знаю, мне потребовалось некоторое время, чтобы понять это.

Пример:

<intent-filter> 
    <data android:scheme="db-hafsa324dasd" /> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
</intent-filter> 
2

Когда я скопировал App_ ключ я забыл добавить «дб» часть к моему ответу.

Пример:

<data android:scheme="db-APP_KEY" /> 

Должно быть:

<data android:scheme="db-hafsa324dasd" /> 

не должно быть:

<data android:scheme="hafsa324dasd" /> 
+0

И ... тогда вы полностью удалили другой ответ? Где остальное то, что у вас было? Это само по себе не является ответом. Кроме того, в будущем вы можете использовать кнопку редактирования, чтобы исправить свои ответы и сообщения. – SomethingDark

Смежные вопросы