entfernt Ich benutze __system_property_get() von sys/system_properties.h, um eine Systemeigenschaft zu erhalten. Ich versuche r10c ndk zu benutzen, weil ich arm64 toolchain brauche.API, um Android-Systemeigenschaften zu erhalten, wird in arm64 Plattformen
__system_property_get() ist in libc.so definiert. Unten ist die Ausgabe von libc.so für armv5/armv7a.
readelf -Ws libc.so | grep property_get
194: 00009100 20 FUNC GLOBAL DEFAULT 4 __system_property_get
198: 00009100 20 FUNC GLOBAL DEFAULT 4 __system_property_get
Aber sieht aus wie es für arm64 Version entfernt wurde! Ich erhalte einen Linker-Fehler, der besagt, dass er nicht definiert ist. Ich habe alle geteilten Bibliotheken von arm64 analysiert, aber keine von ihnen hat dieses Symbol.
Gibt es eine alternative API zum Abrufen der Systemeigenschaft im systemeigenen Code?
Vielen Dank!
Wenn es keine öffentliche API sein sollte (aber die Implementierung für ABI-Kompatibilität beibehalten), sollte es auch aus den NDK-Headern entfernt werden (zumindest für die 64-Bit-Version der Header). Ich habe darüber auch einen Fragen-/Fehlerbericht unter http://b.android.com/143627 eingereicht. – mstorsjo
Ja, der Header, der immer noch da ist, ist ein Fehler. Danke für den Bericht. –
Ja. Die API ist immer noch in der Kopfzeile vorhanden, weshalb ich nach den Symbolen in allen Bibliotheken im NDK suchte. Ich erhalte die Seriennummer, das Modell usw. des Geräts unter Verwendung der Systemeigenschaften in meiner nativen Bibliothek. Gibt es einen anderen Weg, dies zu erreichen? – kanak