2013-01-22 6 views
19

So che posso ignorare una regola in Lint con l'attributo tools:ignoreIgnora diversi avvertimenti in pelucchi Android

La mia difficoltà è che voglio ignorare diverse regole. Nel mio caso, per Google Analytics ga_trackingId, voglio ignorare TypographyDashes e MissingTranslation

ho provato senza successo

<resources tools:ignore="TypographyDashes|MissingTranslation" xmlns:tools="https://schemas.android.com/tools" > 

e

<resources tools:ignore="TypographyDashes,MissingTranslation" xmlns:tools="https://schemas.android.com/tools" > 

e

<resources tools:ignore="TypographyDashes MissingTranslation" xmlns:tools="https://schemas.android.com/tools" > 

Ora sono fuori dalle idee. Come posso specificare più valori in tools:ignore?

+3

Secondo la documentazione elenco separato da virgole dovrebbe fare questo. Vedi in fondo a questa pagina sviluppatore; http://developer.android.com/tools/debugging/improving-w-lint.html – harism

+1

Grazie per il puntatore @harism. Ho aperto [numero 43070] (http://code.google.com/p/android/issues/detail?id=43070) – rds

+0

@harism Buona cattura nel namespace; Mi piacerebbe accreditarti con la risposta accettata – rds

risposta

8

Il problema qui è stato l'utilizzo di sbagliato uri namespace nel file di risorse xml;

xmlns:tools="https://schemas.android.com/tools" 

che avrebbe dovuto essere http://... protocollo invece. Questo è discusso in ulteriori dettagli in issue 43070

+0

In una parola: non seguire la documentazione e utilizzare invece lo spazio dei nomi "http" :) – rds

2

Utilizzato eclipse o intelliJ?

In Eclipse, andare su Finestra -> Preferenze -> Android -> Lint Error Checking

enter image description here

E avere un divertimento ;-)

+0

se ti aiuta, grazie a – throrin19

+0

valido, ma questa configurazione non ha lo stesso ambito. – rds

+0

Questa immagine è stata utilizzata per illustrare esattamente dove stavi per accadere. – throrin19

26

È necessario utilizzare un elenco separato da virgole, ma non devono esserci spazi vuoti.

Esempio:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" // required to work 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:ignore="contentDescription,SpUsage" > // comma separated list. NO blanks allowed! 

Per un elenco delle opzioni valide è possibile ottenere un elenco dalla riga di comando o utilizzare l'errore eclisse pelucchi lista fornita dal throrin19 controllando:

lint --list > lint_options.txt 

Vedi lint documentation .

+0

Questa è l'informazione che stavo cercando. Grazie. – RTF

+3

Questa dovrebbe essere accettata risposta. Saluti! – portfoliobuilder

+0

Questo è esattamente quello che sto trovando. :) – iroiroys

2

È possibile inserire più annotazioni sulle stringhe specifiche di ignorare molteplici controlli pelucchi:

strings.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources>  

    <!--suppress MissingTranslation --> 
    <!--suppress TypographyDashes --> 
    <string name="some_string">ignore my translation</string> 
    ... 

</resources> 

http://tools.android.com/tips/lint/suppressing-lint-warnings