Ich bin ein ziemlich .NET-Typ, der sich in Xamarin entwickelt. Ich habe jedoch ein Stück Java-Code für Android in die Hände bekommen, das ich gerne in C# implementieren würde. Das Problem ist, dass das Projekt in Eclipse entwickelt und dann nach Android Studio portiert wurde und jetzt nicht kompiliert werden kann..get() - und .put() -Methoden von Eclipse nach Android Studio migriert
Ich habe alle Probleme mit Gradle, aber jetzt bin ich mit einigen generierten Annotationen und .put()
und .get()
Methoden fest, die nicht referenziert werden können. Es gibt viele Dinge, die den folgenden ähneln:
Eine normale Schnittstelle wie MySharedPreferences
hat seine generierte versiegelte (endgültige) Klasse Gegenstück MySharedPreferences_
. Dies wird dann im Code verwendet:
import com.someproject.MySharedPreferences_;
...
public class SomeAndroidClass {
public MySharedPreferences_ prefs;
public SomeMethod() {
String x = prefs.someValue().get;
...
prefs.someValue().put("abc");
}
}
Nun, dies nicht kompiliert werden kann, weil die MySharedPreferences_
Klasse wird nicht von Android Studio erzeugt. Ich versuchte, den Unterstrich loszuwerden und stattdessen die MySharedPreferences
Schnittstelle zu verwenden. Aber dann hatte ich Probleme, die .get()
und .put()
Methoden referenzieren. Kann mir bitte jemand helfen, mit diesem Problem umzugehen?
EDIT
Hinzufügen der build.gradle
Datei:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.0.0'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}
repositories {
maven { url "http://dl.bintray.com/populov/maven" }
mavenCentral()
mavenLocal()
}
apply plugin: 'com.android.application'
apply plugin: 'android-apt'
def AAVersion = '4.0.0'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.testproject.smartconfig"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
apt "org.androidannotations:androidannotations:$AAVersion"
compile "org.androidannotations:androidannotations-api:$AAVersion"
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'fr.avianey.com.viewpagerindicator:library:[email protected]'
}
apt {
arguments {
androidManifestFile variant.outputs[0]?.processResources?.manifestFile
}
}
Zeigen Sie Ihre build.gradle-Datei an. Ist das AndroidAnnotations? –
Welcher? Im Android-Studio gibt es zwei - für das Projekt und das App-Modul. – Storm
Das App-Modul eins –