2015-09-29 11 views
5

W Androidzie 1.3.2 plik .idea/codeStyleSettings.xml jest ciągle modyfikowany, aby dodać sekcję dla <Objective-C-extensions>...</Objective-C-extensions\>. Zmiany te są mimo istnienia kodu Objective-C istniejącego w ramach projektu. Po wielu próbach nie udało mi się przywrócić tych zmian - wracają za każdym razem, gdy jest otwarte Studio Android.codeStyleSettings.xml zawsze modyfikowany przez Android Studio

Skąd się wywodzą te zmiany i jak mogę zapobiec ciągłemu odnawianiu modyfikacji w Android Studio?

<Objective-C-extensions> 
    <option name="GENERATE_INSTANCE_VARIABLES_FOR_PROPERTIES" value="ASK" /> 
    <option name="RELEASE_STYLE" value="IVAR" /> 
    <option name="TYPE_QUALIFIERS_PLACEMENT" value="BEFORE" /> 
    <file> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Import" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Macro" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Typedef" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Enum" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Constant" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Global" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Struct" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="FunctionPredecl" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Function" /> 
    </file> 
    <class> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Property" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Synthesize" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InitMethod" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="StaticMethod" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InstanceMethod" /> 
    <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="DeallocMethod" /> 
    </class> 
    <extensions> 
    <pair source="cpp" header="h" /> 
    <pair source="c" header="h" /> 
    </extensions> 
</Objective-C-extensions> 
+0

Tak, to jest denerwujące. Jeśli chodzi o nie dodawanie tej zmiany do repozytorium git, to mam wstępne zatwierdzenie w .git/hooks, aby zresetować ten plik przed zatwierdzeniem, ale nie jest to idealne rozwiązanie. –

Odpowiedz

5

Sekcja <Objective-C-extensions> jest dodana przez wtyczkę obsługującą Androida NDK. Który został dodany w wersji 1.3 i jest aktywowany domyślnie.

Jeśli aktywowałeś tę wtyczkę, dodaje ona Sekcję do twojego codeStyleSettings.xml. W przeciwnym razie zostanie usunięty.

+0

Czy możesz przywrócić działanie wyłączając wtyczkę? – brunobowden

+0

@brunobowden tak, jeśli wyłączysz wtyczkę, sekcja zostanie usunięta przez studio android. – devtribe

+0

Potwierdziłem, że to działa. Dzięki @devtribe, to naprawiono dla mnie duży problem. Nigdy bym nie przypuszczał, że to wtyczka do Android NDK Support. – brunobowden

0

Wystąpił ten problem, który utrudnił proces, ponieważ plik codeStyleSettings.xml był plikiem kontrolowanym przez wersję. Rozwiązałem to (na moim komputerze z systemem Windows, jeśli to robi różnicę) dzięki niskiemu technologicznemu rozwiązaniu oznaczania pliku jako tylko do odczytu. Android Studio skarży się na to po raz pierwszy po wprowadzeniu tej zmiany, ale uniemożliwiłem jej odseparowanie tylko do odczytu i wszystko poszło dobrze.

Powiązane problemy