Delphi使用android的NDK是通过JNI接口,封装好了,不用自己写本地代码,直接调用
一.Android平台编程方式:
1.基于Android SDK进行开发的第三方应用都必须使用Java语言(Android的SDK基于Java实现)
2.自从ndk r5发布以后,已经允许完全用C/C++ 来开发应用或者游戏,而不再需要编写任何Java 的代码
Android程序运行在Dalvik虚拟机中,NDK允许用户使用类似C / C++之类的原生代码语言执行部分程序。
二.跨平台移动开发
Delphi使用android的NDK是通过JNI接口,封装好了,不用自己写本地代码,直接调用。
使用Delphi的本地代码可以实现一些功能,有些功能可以直接调用JNI接口,当然也可以通过写本地代码实现,但是比较麻烦。
跨平台移动开发需要做的工作:
1.本地代码实现大部分功能,androidapi实现部分android手机的功能,iosapi实现部分iOS手机的功能;
2.使用选择编译{$IFDEF ANDROID} {$ENDIF} 和{$ifdef ios} {$endif}。
三.一些设计硬件的部分必须通过调用个平台的相关接口,没有统一的Firemonkey native code可以应对。
除了地理感知,拍照,打电话等功能,涉及硬件的部分,如sim卡,蓝牙等一些各个平台独有的设备,硬件等是没有跨平台的firemonkey代码可以实现的。
http://blog.csdn.net/syndicater/article/details/18549321
Delphi使用android的NDK是通过JNI接口,封装好了,不用自己写本地代码,直接调用的更多相关文章
- android如何使用自己定义JNI接口,以及NDK环境建设和使用的工具。
一.建筑环境: 1.需要的工具: A.cygwin (在windows下使用LINUX系统) ...
- Android之NDK环境配置+JNI开发+so文件编译
前言 这边Android作为日常记录,虽然破坏了文章队形~ 最近人工智能挺火的,也稍微了解了一些库,比如关于视觉库openCV.要在安卓下调用这些C/C++库,需要用到JNI开发,在此把过程分享一 ...
- Android之NDK编程(JNI)
转自:http://www.cnblogs.com/xw022/archive/2011/08/18/2144621.html NDK编程入门--C回调JAVA方法 一.主要流程 1. 新建一个 ...
- Android的NDK开发(3)————JNI数据类型的详解
在Java中有两类数据类型:primitive types,如,int, float, char:另一种为reference types,如,类,实例,数组. 注意:数组,不管是对象数组还是基本类型数 ...
- Android的NDK开发(4)————JNI数据结构之JNINativeMethod
转至:http://blog.csdn.net/conowen/article/details/7524744 1.JNINativeMethod 结构体的官方定义 typedef struct { ...
- Android中NDK的搭建及简单使用 Android.mk相关介绍 JNI的使用
Android中NDK的搭建及简单使用: 使用NDK,简述其重要步骤:.搭建NDK环境(作用:用于自动生成jni下的.c对应的so文件)---到Android NDK官网或Android官网下载ndk ...
- [转]Android通过NDK调用JNI,使用opencv做本地c++代码开发配置方法
原文地址:http://blog.csdn.net/watkinsong/article/details/9849973 有一种方式不需要自己配置所有的Sun JDK, Android SDK以及ND ...
- 【转】 Android的NDK开发(1)————Android JNI简介与调用流程
原文网址:http://blog.csdn.net/conowen/article/details/7521340 ****************************************** ...
- 【转】Android用NDK和整套源码下编译JNI的不同
原文网址:http://www.devdiv.com/android_ndk_jni_-blog-99-2101.html 前些天要写个jni程序,因为才几行代码,想着用ndk开发可能容易些,就先研究 ...
随机推荐
- 【codeforces 785A】Anton and Polyhedrons
[题目链接]:http://codeforces.com/contest/785 [题意] 给你各种形状的物体; 然后让你计算总的面数; [题解] 用map来记录各种物体本该有的面数; 读入各种物体; ...
- mysql5.6+主从集的版本号(mysql5.5主机和从机载带后,5.5在设置有一定的差距)
怎么安装mysql数据库.这里不说了,仅仅说它的主从复制,过程例如以下 在进行主从设置之前 首先确保mysql主从server之间的数据库port防火墙互相打开, 尽量确保主从数据库账户一致性(主从切 ...
- MongoDB小结
教程 MongoDB MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 旨在为WEB应用提供可扩展的 ...
- cocos2d-x创建第一个项目
#include "AppDelegate.h" #include "HelloWorldScene.h" USING_NS_CC; AppDelegate:: ...
- WPF 3D变换应用
WPF可以提供的3D模型使我们可以轻松地创建3D实体,虽然目前来看还很有一些性能上的问题,不过对于一些简单的3D应用应该是可取的,毕竟其开发效率高,而且也容易上手. 下面给大家演示的是使用在WPF 3 ...
- 至Linux-2.6.32编译内核ipset-6.23坎坷的经历
新的版本号ipset 上周,一名医生在儿童医院等待一段差距叫做数量.接受NetfilterPush信息的邮件列表,列表ipset最新6.23版本号的新功能,非常喜欢我现在需要的是,特别是timeout ...
- Parallel file system processing
A treewalk for splitting a file directory is disclosed for parallel execution of work items over a f ...
- Java编程思想学习笔记-使用显式的Lock对象
若要保证后台线程在trylock()之前运行得到锁,可加“屏障”,如下1,2,3步,而trylock()不管设定时间与否都不会阻塞主线程而是立即返回: //: concurrency/AttemptL ...
- Atitit.故障排除系列---php
计划网站数据库错误排除过程
Atitit.故障排除系列---php 计划网站数据库错误排除过程 Php页面报告的错误不能定位到myusql的db配置上...字说是db conn err Mysql 接入错误...大概查看哈能不能 ...
- A Byte of Python(简明Python教程) for Python 3.0 下载
A Byte of Python v1.92 (for Python 3.0) 官方下载地址,当前(20120730) 最新版本 1.92 基于Python3的 下载: http://files.s ...