2013-04-08 19 views
6

Qualche idea del motivo per cui viene visualizzato questo errore quando chiamo getSession().startAuthentication() per Android Dropbox SDK?Configurazione manifest SDK Android Dropbox

: 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 

Eppure la mia AndroidManifest.xml ha il seguente all'interno del <Application></Application> come indicato nelle istruzioni di ottenere iniziato.

<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> 

risposta

6

Se si sta effettivamente vedere "db -CHANGE_ME "(ovvero non è un segnaposto usato per oscurare la tua chiave dell'app), significa che non hai aggiornato la chiave dell'app nel codice Java della tua app. Questo messaggio di errore restituisce la chiave fornita nel codice Java e si aspetta che corrisponda alla chiave nel manifest.

La tua build pulita potrebbe aver selezionato alcune modifiche Java che non erano state precedentemente create.

1

Nessuna idea perché questo dovrebbe essere il caso, ma un progetto pulito ha fatto il trucco (ho aggiunto il codice per i giorni manifesto fa e puliti più volte dal

)
5

Per coloro che di fronte a questo problema, se siete come me si potrebbe non prestare attenzione ad un piccolo dettaglio, date un'occhiata al vostro manifesto:

<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> 

non si deve sostituire l'intera stringa db-APP_KEY con la tua chiave dell'app, dovresti lasciare db-db-{HERE YOUR APP KEY} so che lo so, mi ci è voluto un po 'per capire questo.

Esempio:

<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

Quando ho copiato la chiave app_ ho dimenticato di aggiungere la parte 'db' alla mia risposta.

Esempio:

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

dovrebbe essere:

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

non deve essere:

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

E ... poi è stato eliminato completamente l'altra risposta? Dov'è il resto di ciò che hai avuto? Questo di per sé non è una risposta. Inoltre, in futuro, puoi utilizzare il pulsante di modifica per correggere le tue risposte e i tuoi post. – SomethingDark