2016-07-18 4 views
0

Ich versuche, eine Aktivität zu nennen, die aus einer Bibliothek im Hauptprojekt istwie eine Aktivität aus einer Bibliothek nennen android

Bibliothek Code

Intent in = new Intent(this, com.process.agenda.activity.MainActivity.class); 
startActivity(in); 

Fehler: Rundreferenz zwischen Projekten: app ->: autenticadorCadastro ->: app

Hauptprojekt

apply plugin: 'com.android.application' 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile 'com.android.support:design:23.1.1' 

    compile project(':autenticadorCadastro') 
} 

Bibliothek

apply plugin: 'com.android.library' 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile 'com.android.support:design:23.1.1' 

    compile project(path: ':app') // here throws the error 
} 

Dank

Antwort

1

Sie sollten nicht in der Lage. Wenn Sie Ihr Hauptprojekt von Ihrer Bibliothek aus aufrufen müssen, ist das Projekt eine Abhängigkeit der Bibliothek, die die Dinge falsch herumführt. Wenn Sie eine Bibliothek erstellen, sollte diese nur von sich selbst und anderen Bibliotheken abhängen.

+0

Dies ist meistens richtig, aber es gibt bestimmte Eckfälle. Zum Beispiel ein UI-Widget mit einer Home-Schaltfläche, aber die Home-Schaltfläche ändert sich basierend auf der App. Es hängt auch davon ab, um welche Art von Bibliothek es sich handelt (einige Bibliotheken sind im Grunde Apps, die zum Beispiel nur einige Assets für White Boxing austauschen). –

+0

dann gibt es keine Möglichkeit, wieder mit dem Haupt zu kommunizieren? – WillOliveira

1

Sie müssen eine der anderen Methoden zum Erstellen einer Absicht verwenden. Normalerweise mache ich es nach apk name und activity name (übergeben von der aufrufenden App, oder in Zeichenfolgen Ressourcen, die von der App überschrieben werden, wenn es eine interne nur Bibliothek ist).

Verwandte Themen