2010-12-28 10 views
0

Ich bin auf AndroidTestCase-Klasse in Android 2.2 Quellcode suchen, hat es hat eine Methode getTestContext. wenn ich versuchte, auf die gleiche Funktion mit Android.jar in SDK verpackt zugreifen, sehe ich diese Methoden nicht.AndroidTestCase Klassendatei Version stimmt nicht überein

Nicht nur das ich mehr Methoden sehen, die Öffentlichkeit nicht zu sehen ist, wenn i android-sdk-for-Windows verwenden/Plattformen/android-8/android.jar mit dem sdk verpackt. In meinem Projekt habe ich mein Android-API-Level auf 8 gesetzt.

Wenn ich versuche, mit der rechten Maustaste klicken und auf die Klassenversion zu schauen, sind sie auf 1.5, würde ich erwarten, dass sie auf 2.2 zeigen.

muss ich alles manuell kompilieren, um alle öffentlichen Methoden in 2.2 Quellcode zu erhalten.

Antwort

1

Das ist, weil sie in Wirklichkeit die Methode mit einem Kommentar Anmerkung versteckte:

/** 
* @hide 
*/ 
public Context getTestContext() { 
    return mTestContext; 
} 

Sie werden viele dieser @hide in Android sehen; manche Leute sagen, dass sie versteckte Funktionen sind, die sich noch in der Testphase befinden. Werfen Sie einen Blick auf diesen Artikel für weitere Informationen: Why some classes/methods aren’t presented in SDK and DroidDoc.

+0

Überraschenderweise werden alle diese APIs von Telefon-Nutzern verwendet, um Anwendungen zu entwickeln, also werden sie die SDK-Version selbst beibehalten? – Naresh

Verwandte Themen