什么叫l sensor android

bk2898 87 0

什么叫l sensor android

Android的传感器,主要有距离传感器,重力传感器,光线传感器等

nexus 7怎么刷android l?

 

分享相关内容的知识扩展阅读:

Android开源游戏引擎有哪些?

Android开源游戏引擎是Android游戏开发的基础,选择一个好的Android游戏开发的引擎能让更好的来开发游戏,就简绍几个Android开源游戏引擎。
1、Angle
Angle是一款专为Android平台设计的,敏捷且适合快速开发的2D游戏引擎,基于OpenGL
ES技术开发。该引擎全部用Java代码编写,并且可以根据自己的需要替换里面的实现,缺陷在于文档不足,而且下载的代码中仅仅包含有少量的示例教程。
2、Rokon
rokon是一款Android
2D游戏引擎,基于OpenGL
ES技术开发,物理引擎为Box2D,因此能够实现一些较为复杂的物理效果,该项目最新版本为
2.0.3
(09/07/10)。总体来说,此引擎更大的优点在于其开发文档相当之完备,并且项目作者对反馈Bug的修正非常之神速,所以该框架的使用在目前也最为
广泛,有人干脆将它称为Cocos2d-iPhone引擎的Android版(业务逻辑和编码风格上也确实很像)。附带一提,国内某个需要注册会员才能下
载的Android游戏框架衍生于此框架,所以大家也不要刻板的认为收费便一定是好的,免费就一定不好,更低运行环境要求为Android
1.5。
3、LGame
LGame是一款国人开发的Java游戏引擎,有Android及PC(J2SE)两个开发版本,目前更高版本同为0.2.6(31/07/10)。其底
层绘图器LGrpaphics封装有J2SE以及J2ME提供的全部Graphics
API(PC版采用Graphics2D封装,Android版采用Canvas模拟实现),所以能够将J2SE或J2ME开发经验直接套用其中,两版本
间主要代码能够相互移植。Android版内置有Admob接口,可以不必配置XML直接硬编码Admob广告信息。
该引擎除了基本的音效、图形、物理、精灵等常用组件以外,也内置有Ioc、xml、http等常用Java组件的封装,代价是jar体积较为庞大,PC版
已突破1.2MB,Android版有所简化也在500KB左右。此外,该引擎还内置有按照1:1实现的J2ME精灵类及相关组件,可以将绝大多数
J2ME游戏平移到Android或PC版中。唯一遗憾的是,该项目作者是个极其懒惰的家伙,开发文档从去年说到今年依旧没有提供,只有游戏示例可供下
载。
4、jPCT
jPCT是一款基于OpenGL技术开发的3D图形引擎(PC环境为标准OpenGL,Android为OpenGL
ES),
以Java语言为基础的,拥有功能强大的Java
3D解决方案。该引擎与LGame(此为2D游戏引擎)相类似,目前拥有PC(J2SE)以及Android两个开发版本。
jPCT的更大优势之一,就在于它惊人的向下兼容性。在PC环境中,jPCT甚至可以运行在JVM1.1环境之中,因为jPCT内部提供的图形渲染接口完
全符合所有的Java
1.1规范(就连已经消失的Microsoft
VM乃至更古老的Netscape
4
VM也不例外)。
5、Catcake
Catcake是一款跨平台的Java
3D图形引擎,目前支持PC(J2SE)及Android环境运行(已有iPhone版规划)。该引擎在易用性和运行性能上皆有出色的表现,支持常见的游戏开发功能,诸如精灵动画,音频处理和视频播放等。
当然还有其他的Android开源游戏引擎,也许更好。

如何在Android系统上运行C语言的程序

在Android系统上运行C语言的程序的 *** :

1. 查看可执行文件xlisten-arm所需要的动态链接库:

执行语句:

Android手机64位和32位的软件存在兼容问题吗

Android手机 64位和32位的Android手机软件存在兼容问题吗

Android手机64位和32位的软件存在兼容。

关于Android 64位系统兼容32位应用的实现的简单分析:

Android 的zygote进程的实现不同于之前的版本,除了有zygote进程之外还有zygote64进程。

在init.zygote32_64.rc中有明确指出:

service zygote /system/bin/app_process32 -Xzygote /system/bin --zygote --start-system-server --socket-name=zygote

...

service zygote_secondary /system/bin/app_process64 -Xzygote /system/bin --zygote --socket-name=zygote_secondary

...

其中app_process32 和app_process64 就是zygote进程的可执行程序,启动后会改名成zygote。

顾名思义,zygote32即app_process32是一个运行在32位的进程,它所连接的库也都是32位的。而zygote64就是运行在64位的进程,它所连接的库都是64位的。

在不考虑有32/64兼容库的情况下,一个进程如果要正确运行,就必须从可执行程序入口开始到所有使用的库都保持32/64位的一致性。

因为zygote进程是所有第三方应用程序的父进程,所以可以认为,如果应用程序是32位的,那没他的父进程也肯定是32位,换句话说,如果需要启动某个32位的应用,那么肯定是通过32位的zygote进程fork出来的。

这个一点可以在ActivityManagerService上得到验证。

ActivityManagerService中startProcessLocked *** 实现启动应用,主要通过Process中的startViaZygote ***

这个 *** 最终是向相应的zygote进程发出fork的请求 zygoteSendArgsAndGetResult(openZygoteSocketIfNeeded(abi), argsForZygote);

其中openZygoteSocketIfNeeded(abi)会根据abi的类型,选择不同的zygote的socket监听的端口

在之前的init文件中可以看到zygote32位监听的端口就是–socket-name=zygote另外一个就是–socket-name=zygote_secondary

因此可以证实,之前的猜测,即32应用进由32位zygote进程fork出来,64位应用进程由64zygote进程fork出来。那么之前说的abi参数就是决定应用是32还是64位的关键所在,跟踪这个参数,发现这个参数在ApplicationInfo的primaryCpuAbi中决定

这个值由PackageManagerService在做scanPackageLI的时候决定,具体这个值的得出有一个公式化的过程,主要就是判断这个apk有没有使用native的库

如果使用了,那就看使用了的是32位的还是64位的,另外还要看系统支持的是32位还是64位的。

在64位设备上,如果app的 lib 目录下 存在armeabi,则以32位兼容方式运行。

如果存在arm64-v8a 则已64位运行。如果没有任何 so,则 primaryCpuAbi 为空,按照系统的默认配置决定,也就是64位运行。

根据这些因素就可以决定这个apk是应该是32位的还是64位的。以上就是Android L 64位系统兼容32位应用的基本实现过程。另外记录一点,在源码环境下如果要PREBUILT第三方的so

如果是32位的需要专门标注 LOCAL_MULTILIB := 32以此告诉编译系统so位32位,防止编译到64位下去。

抱歉,评论功能暂时关闭!