导航:首页 > 操作系统 > androidapi详解

androidapi详解

发布时间:2022-06-24 03:07:43

A. android的sdk和api是什么意思

SDK就是Kit,工具箱嘛,IOS平台上就是XCode,一系列的工具组合在一起,比如你在编辑器里敲代码的时候它会自动补全代码,自动错误检查,你点一下Run,它会调用编译器来自动编译,编译完它会调用iPhone的模拟器来运行,这就是SDK,提供整套的开发工具供开发者使用。
OpenAPI就是网站提供的接口,比如你想开发一个围脖的手机客户端,你从哪里读取数据写入数据呢?总不能从Web版里调用吧?那里是一堆一堆的html代码啊,所以OpenAPI就是网站提供的接口,供开发者接入用的,比如聚合数据平台。

SDK (Software Development Kit)翻译成中文就是"软体开发工具组"
是用来帮一个 产品 或 平台 开发应用程式的工具组,由产品的厂商提供给开发者使用的。
通常是 某一家厂商 针对某一 平台 或 系统 或 硬体 所发布出来用以开发应用程式的工具组,
在这个工具包里面,可能包含了各式各样的开发工具,模拟器等。
例如:给 Android平台 使用的 Android SDK 就是用来开发 Android系统上面的应用程式。
API (Application Programming Interface)
翻译成中文就是"应用程式接口",其实这样翻译不好,应该说是"程式沟通接口"。
翻译为接口,顾名思义就要沟通两个不同的东西用的,通常由一组函式库所组成。
在一个 同一个平台 下的 两个不同东西(程式 or 系统),为了能取用对方的功能等等,
所以一个 X程式 写了一组函式,让 同一平台的其他程式 取用 X程式 的功能,
那组函式就可以说是那个 X程式 对外开放的 API。
例如:我要在 自己的网页 上加入 google map网页的功能,就使用 "google map API"

有时候 SDK(开发者工具包) 里也会带有些许 API 用来调用一些系统平台程式提供的功能
例如说:视窗显示,图形特效等等。
以下举一个实际例子来说明,调用系统程式功能的API 是怎麽一回事
开发Windows应用程式的SDK(开发者工具包) 里就包含 Win32 API
说明: Win32 API 是一个函式库,可以给Windows应用程式 调用 Windows系统的功能
在PTT看到有人问了差异性,我的看法是
SDK是用来开发某一个平台的程式的工具包,API 是让同一平台下的程式取用它的功能的函式库。
以及下面的评论
1.API 通常大家都不会弄错,的确就是以功能为导向的"方法"或"函式"清单,
看程式语言或平台而定( Methods, Functions... ),
而每个 API 主要都是为了达成某特定功能所设计的。
开发商可以为了不同平台,设计相同的 API 让开发者使用,
也可能会因应不同平台,制作不同的 API 让开发者使用。
2.当 API 数量够多功能够繁复并且可交互为用的时候,
( 例如为了达成某些功能,常需要同时引用某些 APIs 来完成 )
开发商就会为了开发便利,而预先撰写好一些组合好 APIs 的 API
供开发者使用,来统一有特定需求的开发者能有一致的开发与使用体验,
( 例如让使用"网路连线"的开发者不需自己处理网路的基础沟通信息,
与错误处理方式,使 API 在应用的时候有一定程度的便利性等 )
然后,也陆续发展出测试、除错工具,甚至是设计不同平台开发环境所需的套件,
尤其针对不同平台,更是设计了对应的工具来协助开发、除错;
SDK 名词之所以出现,俨然是为了汇整上述这些资源而诞生的,
我想也可以说成是 API 的包含者(直接使用)与应用者(以便加速开发),
也因此可以说这两个是属于不同层级的东西...

B. android api 签名是什么意思

android api 签名是api调用的时候需要按照约定的参数生成一个字符串,对方接收到后校验参数,合法后接受请求并返回结果。
所有android端的API的有效访问URL包括以下三个部分:
1. 资源访问路径,如/v1/deal/find_deals;
2. 请求参数:即API对应所需的参数名和参数值param=value,多个请求参数间用&连接
如deal_id=1-85462&appkey=00000;
3. 签名串,由签名算法生成

签名算法如下:
1. 对除appkey以外的所有请求参数进行字典升序排列;
2. 将以上排序后的参数表进行字符串连接,如...keyNvalueN;
3. 将app key作为前缀,将app secret作为后缀,对该字符串进行SHA-1计算,并转换成16进制编码;
4. 转换为全大写形式后即获得签名串
签名串获得后,将其作为sign参数附加到对应的URL中,即可正常访问API。
注意:请保证HTTP请求数据编码务必为UTF-8格式,URL也务必为UTF-8编码格式。
参考代码:

// 定义申请获得的appKey和appSecret
String appkey = "XXXXXXXX";
String secret = "";
String apiUrl = "http://api.dianping.com/v1/business/find_businesses";

// 创建参数表
Map<String, String> paramMap = new HashMap<String, String>();
paramMap.put("format", "json");
paramMap.put("city", "上海");
paramMap.put("latitude", "31.21524");
paramMap.put("longitude", "121.420033");
paramMap.put("category", "美食");
paramMap.put("region", "长宁区");
paramMap.put("limit", "20");
paramMap.put("radius", "2000");
paramMap.put("offset_type", "0");
paramMap.put("has_coupon", "1");
paramMap.put("has_deal", "1");
paramMap.put("keyword", "泰国菜");
paramMap.put("sort", "7");

// 对参数名进行字典排序
String[] keyArray = paramMap.keySet().toArray(new String[0]);
Arrays.sort(keyArray);

// 拼接有序的参数名-值串
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(appkey);
for (String key : keyArray)
{
stringBuilder.append(key).append(paramMap.get(key));
}

stringBuilder.append(secret);
String codes = stringBuilder.toString();

// 字符串连接示例
// XXXXXXXXcategory美食city上海formatjsonhas_coupon1has_deal1keyword泰国菜latitude31.21524limit20longitude121.420033offset_type0radius2000region长宁区sort7

// SHA-1编码, 这里使用的是Apache codec,即可获得签名(shaHex()会首先将中文转换为UTF8编码然后进行sha1计算,使用其他的工具包请注意UTF8编码转换)
/*
* 以下sha1签名代码效果等同
* byte[] sha = org.apache.commons.codec.digest.DigestUtils.sha(org.apache.commons.codec.binary.StringUtils.getBytesUtf8(codes));
* String sign = org.apache.commons.codec.binary.Hex.encodeHexString(sha).toUpperCase();
*/
String sign = org.apache.commons.codec.digest.DigestUtils.shaHex(codes).toUpperCase();

//签名示例
//

C. Android API 是什么东西

API(Application
Programming
Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节.
简单来说,就是一套可供调用的系统接口.

D. android API是什么

短信API(短信应用程序接口)其实是一组定义、程序及协议的集合,通过 API 接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过使用 API 函数开发应用程序,从而可以避免编写无用程序,以减轻编程任务。 API 同时也是一种中间件,为各种不同平台提供数据共享。

E. 如何通过android api文档学习android

(1) 首先要理解,什么是Android,如果读者通过本书的第一章学习初步了解了 Android,若想进一步学习和了解,建议仔细阅读这个文档中的 “What is Android”。

(2) 阅读 “Anatomy of an Android Application” 能够知道一个 Android 应用中到底都有些什么东西,如果你读完这个文档还不是很清楚的话也没有关系,本书第6章会详细介绍 Android 的组成部分和各个部分所扮演的角色。

(3) 接着可以读一下,“Development Tools”一节的内容,其中会介绍 SDK 中包含的一些工具及工具的作用,但是其介绍的比较简单,我们后面会详细讲解各个工具的作用。

(4) 然后可以看一下“Application Life Cycle”,了解 Android 中生命周期的介绍,其中对前台进程、可见进程、后台进程等都做了比较详细的解释。

(5) 到这里,读者已经跃跃欲试了,那么看看其“Installing the SDK”文档,介绍了开发环境,读者通过本书第2章的学习,应该对这个文档中介绍的内容非常熟悉了。

(6) 了解了开发环境以后,就动手实践了,先按照“传统习惯”实现一个“Hello World”程序,那么请参考“Hello Android”这节内容。

(7) Hello World 程序比较简单,完成后就可以开始 “Notepad Application”的制作和学习了,如果读者真正弄懂了关于这个应用程序的4个练习,就已经从初学者转向开发高手了。

(8) 在练习“Notepad Application”的时候,可以阅读一下“Developing Application”这节的内容,其用了很多文字,也介绍了更多的细节,其中包括如何实现 UI,数据存储和读取,安全问题,资源引用和国际化等,其中每类下面都在更详细的介绍。

(9) 最后,还要熟悉一下“Reference Information”的内容,其中按照包、索引、继承关系介绍了API及其使用方法;同时列举了比较典型的视图组件和权限类型号,做到心里有数,在以后遇到问题的时候知道在哪里可以查到就可以了。

F. 我们是怎么调用android sdk里的库的,android的API都有哪些怎么分类

android sdk版本设置在2个地方 1. 文件project.properties t中arget=android-10
2. 文件AndroidManifest.xml中<uses-sdk android:minSdkVersion="10"></uses-sdk>
android 的API : http://developer.android.com/reference/java/io/DataInput.html

G. android api 23 和 android api 26有什么区别,android api有什么作用

API叫应用程序编程接口,安卓api23和安卓API 26都是用于安卓开发的、应用程序编程序接口的版本,一个是23,一个是26。它们的功能应该是类似的,不过有些程序可能针对于23或者26的,上下未兼容。

H. 如何创建Android库以及Android aar文件详解

创建 Android 库

Android 库在结构上与 Android 应用模块相同。它可以提供构建应用所需的一切内容,包括源代码、资源文件和 Android 清单。不过,Android 库将编译到您可以用作 Android 应用模块依赖项的 Android 归档 (AAR:Android Archive Resource) 文件,而不是在设备上运行的 APK。与 JAR 文件不同,AAR 文件可以包含 Android 资源和一个清单文件,这样,除了 Java 类与方法外,您还可以捆绑布局和可绘制对象等共享资源。

库模块在以下情况下非常有用:

I. android api是什么东西怎么使用

做程序用的。

阅读全文

与androidapi详解相关的资料

热点内容
加密聊天消息密钥输入什么 浏览:541
32位windows编译器 浏览:962
ipad邮件无法连接发件服务器地址 浏览:61
php接收websocket 浏览:564
碧蓝航线如何查账号服务器 浏览:835
msx命令 浏览:750
怎么购买app内购 浏览:490
vivo手机怎么把安卓系统提示关闭 浏览:964
汽油分配控制单片机 浏览:579
python字典最大值最小值求和 浏览:281
php7pdo扩展 浏览:941
粉笔app如何看行测 浏览:817
如何举报不正当app 浏览:255
智能家居算法组 浏览:56
解压动画寿司 浏览:520
python3怎么连接mysql 浏览:425
程序员晒出一段代码 浏览:275
python爬虫崔庆才 浏览:767
u8服务器如何开启 浏览:884
java设置jtable 浏览:751