Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
华硕Fonepad 7上的Android报告称为armeabi-v7a,即使它';那是X86_Android_Android Ndk - Fatal编程技术网

华硕Fonepad 7上的Android报告称为armeabi-v7a,即使它';那是X86

华硕Fonepad 7上的Android报告称为armeabi-v7a,即使它';那是X86,android,android-ndk,Android,Android Ndk,在我的应用程序中,我从Build.CPU\u ABI检查CPU,如果CPU是X86,请用户下载捆绑了X86库的正确软件包 但今天我买了一台装有英特尔CPU的华硕Fonepad 7,但令人惊讶的是,它的版本是armeabi-v7a而不是X86。我在某个地方读到,由于许多开发人员在他们的应用程序中没有捆绑X86本机库,华硕使用了ARM-X86转换器,因此应用程序think在ARM设备上运行。更令人惊讶的是,即使捆绑了X86库,它仍然加载Arm库 我相信代码翻译会显著降低性能。那么有没有办法确定真正的

在我的应用程序中,我从Build.CPU\u ABI检查CPU,如果CPU是X86,请用户下载捆绑了X86库的正确软件包

但今天我买了一台装有英特尔CPU的华硕Fonepad 7,但令人惊讶的是,它的版本是armeabi-v7a而不是X86。我在某个地方读到,由于许多开发人员在他们的应用程序中没有捆绑X86本机库,华硕使用了ARM-X86转换器,因此应用程序think在ARM设备上运行。更令人惊讶的是,即使捆绑了X86库,它仍然加载Arm

我相信代码翻译会显著降低性能。那么有没有办法确定真正的CPU架构呢?然后强制加载X86库而不是Arm

------编辑--------

当我从包**Build.CPU_ABI中删除armeabi-v7a文件夹时,它变成了X86,现在它加载X86代码。**

我签出了/proc/cpuinfo,唯一清楚的是它包含一个Intel CPU。那么,如果英特尔Word出现在CPUFIN?

中,那么安全地考虑CPU是否是x86? 唯一的选择是有两个不同的APK,一个用于arm,另一个用于X86。因为如果所有的二进制文件都在同一个APK文件中,Arm二进制文件无论如何都会被加载

这是/proc/cpuinfo内容:

processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 90
model name  : Genuine Intel(R) CPU   4000  @ 1.00GHz
stepping    : 0
microcode   : 0x27
cpu MHz     : 1833.000
cache size  : 1024 KB
physical id : 0
siblings    : 4
core id     : 0
cpu cores   : 4
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 11
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
bogomips    : 1996.80
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 1
vendor_id   : GenuineIntel
cpu family  : 6
model       : 90
model name  : Genuine Intel(R) CPU   4000  @ 1.00GHz
stepping    : 0
microcode   : 0x27
cpu MHz     : 1833.000
cache size  : 1024 KB
physical id : 0
siblings    : 4
core id     : 1
cpu cores   : 4
apicid      : 2
initial apicid  : 2
fpu     : yes
fpu_exception   : yes
cpuid level : 11
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
bogomips    : 1996.80
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 2
vendor_id   : GenuineIntel
cpu family  : 6
model       : 90
model name  : Genuine Intel(R) CPU   4000  @ 1.00GHz
stepping    : 0
microcode   : 0x27
cpu MHz     : 1833.000
cache size  : 1024 KB
physical id : 0
siblings    : 4
core id     : 2
cpu cores   : 4
apicid      : 4
initial apicid  : 4
fpu     : yes
fpu_exception   : yes
cpuid level : 11
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
bogomips    : 1996.80
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor   : 3
vendor_id   : GenuineIntel
cpu family  : 6
model       : 90
model name  : Genuine Intel(R) CPU   4000  @ 1.00GHz
stepping    : 0
microcode   : 0x27
cpu MHz     : 1833.000
cache size  : 1024 KB
physical id : 0
siblings    : 4
core id     : 3
cpu cores   : 4
apicid      : 6
initial apicid  : 6
fpu     : yes
fpu_exception   : yes
cpuid level : 11
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms
bogomips    : 1996.80
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

您可以读取/proc/cpuinfo

➜  ~  adb shell
shell@android:/ $ cat /proc/cpuinfo                                            
Processor   : ARMv7 Processor rev 10 (v7l)

这将告诉您所有可用的ABI。。。一般来说,getprop对于获取更多系统信息非常有用。

请查看我的更新!cpuinfo文件中唯一与X86 cpu相关的是intel word。在CPUFIN文件中使用英特尔Word是否可以安全地考虑一个x86 CPU?@克里斯塔顿如何检查CPUFIN文件中不存在ARMV7字?@ Ali:听起来不错(检查英特尔)-但我会首先尝试,如果您的设备仍然可以处理应用了更改的x86代码-可能它们破坏了此路径,因此您不需要首先了解此细节..如何检查设备在报告为ARM时是否可以处理x86代码并加载ARM二进制文件,即使x86二进制文件已打包?尝试一下-我没有这样的功能一个残废的设备-甚至不会在意这样的性能差-他们应该得到这个…-)
getprop | grep -i cpu