Wie kann ich feststellen, ob meine installierte Android-Version, nicht die CPU, eine 64-Bit- oder 32-Bit-Version ist?

Solange eine 64-Bit-CPU 32-Bit-Programme ausführen soll , ist es manchmal schwierig zu wissen, welche ich auf meinem Gerät installiert habe.

Es gibt Programme, die dieses Wissen erfordern, wie das Xposed Framework-Installationsprogramm .

Was könnte als die richtige Methode angesehen werden, sei es ADB, Befehlszeile oder Software?

Früher habe ich auf Desktop-Linux gemacht:

 sudo uname -a

Vielleicht gibt es ein Äquivalent für Android?

Weitere Daten:

  • Einige Programme, die darüber informieren sollten, sind mir nicht klar genug. Dies ist ein Beispiel für einen AIDA64-Bericht. Auch wenn es 32 Bit anzeigt, sind das Informationen über das Betriebssystem? Ich würde sagen, es geht nur um die Hardware:

    (Klicken Sie zum Vergrößern auf das Bild; meine AIDA64 ist auf Spanisch)

    IMG: AIDA64-Berichtsbeispiel

Frage zu diesem anderen erweitert

Welches Gerät haben Sie?
Siehe diese Seite: software.intel.com/en-us/blogs/2014/12/16/… Es heißt, die Eigenschaft ro.product.cpu.abiund die zugehörigen ro.product.cpu.abilist32und ro.product.cpu.abilist64in der Ausgabe von getprop zu sehen. Ich habe kein 64-Bit-Gerät, daher kann ich einige Dinge nicht testen. Es gibt hier auch eine ähnliche Frage zu Quora .
@New-To-IT , ich habe mehrere Android-Geräte. Und als Informatiker arbeite ich mit mehreren verschiedenen Modellen. Das Finden einer generischen Methode (oder zumindest so generisch wie möglich) wäre für mich vorzuziehen. Die Angabe eines Geräts würde diese Frage in „Wie kann ich erraten, ob die installierte Android-Version für meine [Marke][Modell][Nummer] eine 64- oder 32-Bit-Version ist“ umwandeln.
@Firelord: Danke für den Link. Es scheint sich auf "aktuelles Gerät" zu beziehen, nicht auf "aktuell installierte Android-Version". Wäre es das gleiche?
Wenn Sie einen 32-Bit-Kernel auf einem 64-Bit-Computer ausführen, sagt der Kernel einfach, dass der Computer ein 32-Bit-Computer ist. Die Dinge könnten sich geändert haben (ich kenne die aktuelle Szene nicht), also soweit ich das beurteilen kann. Vielleicht können andere einen besseren Beitrag leisten.
@Sopalajo de Arrierez Haben Sie die Antutu-Benchmark-App ausprobiert? Es zeigt die 32/64-Bit-Informationen für alle Geräte an. ;)
@Lucky: Ich habe AIDA64 und einige andere Tools getestet, die die 32/64-Bit-Informationen melden, aber keines von ihnen stellt klar, ob es sich um das Betriebssystem oder die Hardware handelt. Meiner ursprünglichen Frage wurde ein Aufnahmebildschirm hinzugefügt, der angezeigt werden soll.
Verwandte, wenn nicht ein Betrüger: android.stackexchange.com/q/36291/44325
@AndrewT. : Ich denke nicht, dass diese Frage ein Duplikat ist, solange sie 2012 gestellt wird, als es keine 64-Bit-Hardware für Android-Geräte gab. Es wird nur gefragt, ob das Android -Betriebssystem (das damals vorhandene ) eine 32- oder 64-Bit-Software ist.
Ich bin mir auch nicht sicher, ob das ein Dupe ist (deshalb habe ich nicht für das Schließen gestimmt), aber als ich darüber recherchiert habe, bin ich nie auf einen Begriff wie Android OS 64-Bit gestoßen, im Vergleich zu anderen Betriebssystemen wie Windows (x64 ). Alles, was ich fand, war, dass es nur von der CPU-Architektur abhängt und Android L das erste 64-Bit-Betriebssystem ist . Wenn Sie das nicht gemeint haben oder mir etwas über 64-Bit-Betriebssystem vs. CPU auf Android fehlt, klären Sie mich bitte auf.
(Fortsetzung) Abgesehen davon bin ich im Gegensatz zu Windows- oder Linux-Betriebssystemen (x86 vs. x64) auch nie auf Download-Images für Android mit einer bestimmten Bitzahl (32 oder 64) gestoßen.
Nun, @AndrewT. Vielleicht sollten wir einen anderen Thread starten (oder diesen ändern) mit dem Titel "Gibt es eine 64-Bit-Android-Version und eine 32-Bit-Version?". Eine andere Möglichkeit, es zu fragen: "Könnte ein 64-Bit-Hardwaregerät eine 32-Bit-Android-Version ausführen?". Manchmal ist das Problem eher die Frage als die Antwort.
Ich denke, das ist eine gute Idee, da es anscheinend einfacher ist, Missverständnisse zwischen Bitness in Android OS (mit SoC) zu haben als in anderen Betriebssystemen (zumindest war ich bei der Recherche mit diesem Thema verwirrt). Aber ändern Sie diese Frage nicht, da sie bereits eine Antwort hat. Erweitern Sie dies entweder oder stellen Sie eine neue Frage und verweisen Sie auf diese Frage.
Die ursprüngliche Frage wurde geändert, um sie auf die neue @AndrewT zu erweitern.

Antworten (1)

uname -mzeigt die Architektur des laufenden Kernels an . Dies unterscheidet sich von dem, was Ihre Hardware ausführen kann.

Leider muss man wissen, welche Architekturen 32-Bit und welche 64-Bit sind. Aber das kannst du ganz einfach herausfinden.

Zum Beispiel zeigt mein m7 arm7l. Eine schnelle Suche bestätigt, dass es sich um eine 32-Bit-Architektur handelt, was bedeutet, dass mein laufender Kernel als ausführbare 32-Bit-Datei kompiliert wurde.

Aber wenn Sie die Verwendung von überprüfen uname, erhalten Sie -m The machine (hardware) type. i.stack.imgur.com/DTueH.png
Es bezieht sich auf die Maschinenarchitektur, für die der Kernel kompiliert wurde. Versuchen Sie, 32-Bit-Ubuntu auf Ihrem 64-Bit-Computer zu installieren, und Sie erhalten i686 oder einen anderen 32-Bit-Architekturnamen von uname -m.
Wie Paulus sagte, uname -mkann täuschen. Einige relevante Details hier: Könnte ein 64-Bit-Hardwaregerät eine 32-Bit-Android-Version ausführen?