2015-09-29 16 views
5

Androidスタジオ1.3.2を使用すると、.idea/codeStyleSettings.xmlは常に変更され、<Objective-C-extensions>...</Objective-C-extensions\>のセクションが追加されます。これらの変更は、プロジェクト内にObjective-Cコードが存在しないにもかかわらずです。多くの試みの後で、私はこれらの変更を元に戻すことができませんでした。Android Studioを開くたびに戻ってきます。codeStyleSettings.xmlは常にAndroid Studioによって変更されます

これらの変更はどこから来ていますか、Android Studioが修正を常に元に戻すのを避けるにはどうすればよいですか?

+0

はい、これは刺激的です。この変更をgit repoに追加しないという点では、コミットする前にこのファイルをリセットするために.git/hooksのプリコミットフックがありますが、理想的な解決策ではありません。 –

答えて

5

<Objective-C-extensions>セクションは、Android NDK Support Pluginによって追加されました。 1.3で追加され、デフォルトで有効になっています。

このプラグインを有効にしている場合は、sectionをcodeStyleSettings.xmlに追加します。それ以外の場合は削除されます。

+0

プラグインを無効にして動作を元に戻すことはできますか? – brunobowden

+0

@ brunobowdenはい、プラグインを無効にすると、セクションがアンドロイドスタジオによって削除されます – devtribe

+0

私はそれが動作することを確認しました。ありがとう@devtribe、それは私のための大きな苦痛点を修正しました。私はそれがAndroid NDK Supportプラグインであるとは思わなかったでしょう。 – brunobowden

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

はcodeStyleSettings.xmlがバージョン管理ファイルであったので、プロセスを妨げ、この正確な問題に遭遇しました。そのファイルを読み取り専用としてマーキングするという、ローテクな解決法を使って解決してください(私のWindowsマシン上では違いがあります)。 Android Studioはその変更を行った後に初めて不満を言いましたが、私はそれを読み込み専用にしないようにしました。

関連する問題