4

デバイスがIntelプロセッサで実行されているかどうかを確認できるコードはAndroidSDKにありますか?

ありがとう。

4

5 に答える 5

1

私の知る限りではありませんが、プロセッサの ISA を本当に知る必要があるのは、ネイティブ コードを実行する必要があるときだけです。したがって、1 つの方法は、異なる ISA (MIPS、ARM、x86) に対して異なる値を返すメソッドをネイティブ ライブラリに単純に追加することです。JNI 呼び出しを 1 回行うだけで、必要な答えを得ることができます。

于 2012-07-19T14:56:01.817 に答える
1

個人的にはハックとして使っていますが、役に立つかもしれません。アイデアは、cat を使用して /proc/cpuinfo を解析し、その上で GenuineIntel を探すことです。1つのアプリで使用しています。

私が言ったように、ハックのようですが、経験豊富な Android 開発者がより良い解決策を提案できるかもしれません。

private boolean isAnIntel() {
   String[] args = {"/system/bin/cat", "/proc/cpuinfo"};
   cmd = new ProcessBuilder(args);

   Process process = cmd.start();
   InputStream in = process.getInputStream();
   byte[] re = new byte[1024];
   while(in.read(re) != -1){
    result = result + new String(re);
   }
   in.close();
   return result.indexOf("GenuineIntel") > 0;
}
于 2012-07-19T15:05:16.110 に答える
0

Android は LINUX であることを忘れないでください。すべての CPU 情報はファイル "/proc/cpuinfo" にあります。プロセッサが intel の場合、そのファイルの vendor_id の値は GenuineIntel になります。(vendor_id : 純正インテル)

于 2012-07-19T14:59:05.697 に答える
0

インテルのブログには記事があります https://software.intel.com/en-us/blogs/2014/12/16/how-to-identify-the-image-is-32-bit-or-64-bit- Android 5.0以降にAPIが変更されたro.product.cpu.abiプロパティまたは再度使用することをお勧めするユーザー空間Build

CPU_ABI
CPU_ABI2
SUPPORTED_32_BIT_ABIS
SUPPORTED_64_BIT_ABIS
SUPPORTED_ABIS
于 2015-03-25T04:30:49.820 に答える