2016-06-07 13 views
3

I RX-Bibliothek in meinem Android-Projekt bin mit und aus irgendwelchen Gründen muss ich meine build.gradle haben, wie:Build-Fehler: Jack erfordert Werkzeuge 24.0.0 Erstellen oder später

apply plugin: 'com.android.application' 

android { 
compileSdkVersion 23 
buildToolsVersion "23.0.3" 

defaultConfig { 
    applicationId "com.urjapawar.bevyotp" 
    minSdkVersion 18 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    jackOptions { 
     enabled true 
    } 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
compileOptions { 
    sourceCompatibility JavaVersion.VERSION_1_8 
    targetCompatibility JavaVersion.VERSION_1_8 
} 
} 

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
testCompile 'junit:junit:4.12' 
compile 'com.android.support:appcompat-v7:23.4.0' 
compile 'com.android.support:support-v4:23.4.0' 
compile 'com.android.support:recyclerview-v7:23.4.0' 
compile 'io.reactivex:rxandroid:0.24.0' 
} 

Ich habe besucht this und this too aber kann es nicht beheben. Mein Projektcode ist RegisterActivity.java

public class RegisterActivity extends AppCompatActivity { 

EditText name,email,phonenumber,city; 
Button button; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_register); 
    name = (EditText) findViewById(R.id.nameinput); 
    email = (EditText) findViewById(R.id.emailinput); 
    phonenumber = (EditText) findViewById(R.id.phonenumber); 
    city = (EditText) findViewById(R.id.cityName); 
    final Pattern emailPattern = Pattern.compile(
      "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@" 
        + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"); 

    Observable<Boolean> userNameValid = WidgetObservable.text(name) // [2] 
      .map(e -> e.text()) 
      .map(t -> t.length() != 0); 

    Observable<Boolean> emailValid = WidgetObservable.text(email) 
      .map(e -> e.text()) 
      .map(t -> emailPattern.matcher(t).matches()); 

    Button registerButton = (Button) findViewById(R.id.button3); 

    Observable<Boolean> registerEnabled = 
      Observable.combineLatest(userNameValid, emailValid, (a, b) -> a && b); 
    // registerEnabled.subscribe(enabled -> registerButton.setEnabled(enabled)); 
    emailValid.distinctUntilChanged() 
      .doOnNext(b -> Log.d("[Rx]", "Email " + (b ? "Valid" : "Invalid"))) 
      .map(b -> b ? Color.BLACK : Color.RED) 
      .subscribe(color -> email.setTextColor(color)); 

    userNameValid.distinctUntilChanged() 
      .doOnNext(b -> Log.d("[Rx]", "Uname " + (b ? "Valid" : "Invalid"))) 
      .map(b -> b ? Color.BLACK : Color.RED) 
      .subscribe(color -> name.setTextColor(color)); 

// and registerEnabled 

    registerEnabled.distinctUntilChanged() 
      .doOnNext(b -> Log.d("[Rx]", "Button " + (b ? "Enabled" : "Disabled"))) 
      .subscribe(enabled -> registerButton.setEnabled(enabled)); 

} 
public void OTPbutton(View view){ 
    startActivity(new Intent(RegisterActivity.this, ChooseActivity.class)); 
} 


} 

Hier wird das Protokoll Log

Vielen Dank im Voraus

+0

unten sehen meine Antwort verwenden. – Ironman

Antwort

7

Als Fehler sagen Sie Änderung buildToolsVersion

buildToolsVersion "23.0.3" 

müssen

dies.

oder

buildToolsVersion = "24.0.0 rc1" dies.

+0

Vielen Dank! mit +1 –

+0

@UrjaPawar froh, Ihnen zu helfen. – Ironman

+0

Was ist der Unterschied zwischen den beiden? – Andreas

0

jetzt besser Sie

buildToolsVersion = "24.0.0"