‘壹’ APP与SDK的关系是什么
SDK建立APP(应用软件)时的开发工具的集合,API就是可以调用数据接口。用SDK实现系统的一部分功能,调用相应的API数据,最后的产物就是一个APP,也是我们平常使用的软件。
SDK一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合,比如提供安卓开发工具、或者基于硬件开发的服务等。也有针对某项软件功能的SDK,如推送技术、图像识别技术、移动支付技术、语音识别分析技术等。
API目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
(1)sdk编译扩展阅读
API应用案例:
示例场景:假如你是一家小企业,公司网站上有一个表格是用来给客户注册预约的。你想要凭借这些预约细节信息,让客户能够自动在谷歌日程上创建活动。
API使用:这就意味着,你的网站服务器需要直接与谷歌服务器进行对话,在掌握既定细节信息的情况下,申请创建活动。之后,你的服务器就会接收到谷歌的响应并进行处理,然后将相关信息发送回浏览器,比如说向用户发送一个确认信息。
API的分类:
API又分为(Windows、linux、Unix等系统的)系统级API,及非操作系统级的自定义API。
作为一种有效的代码封装模式,微软Windows的API开发模式已经为许多商业应用开发的公司所借鉴,并开发出某些商业应用系统的API函数予以发布,方便第三方进行功能扩展。如Google、苹果电脑公司,以及诺基亚等手机开发的API等等。
API又分为开放式API和私有API。顾名思义,开放式API即是向所有人公开的接口,允许任何人调用它并获取到它背后的数据,有时公司会将 API 作为其公共开放系统。
也就是说,公司制定自己的系统接口标准,当需要执行系统整合、自定义和程序应用等操作时,公司所有成员都可以通过该接口标准调用源代码,该接口标准被称之为开放式API。私有API即接口未对外开放。
‘贰’ Windows SDK 不再附带完整的命令行构建环境。你必须单独安装编译器和构建环境。
以前sdk包含VC++编译器的,但是从7.1以后为了整合sdk到vs2012和vs2013中就剥离了编译器。当然说起来还是因为7.1sdk的bug导致系统运行环境和vs出错无法使用才在之后的sdk中剥离了编译环境。不过你下载免费的vs2013 express for desktop就会自带完整的sdk和编译环境。
‘叁’ sdk 编译器 之间关系
SDK,即软件开发包,里面一般包含有编译器和编译时需要的支持库。(有时候不一定有编译器)
Symbian平台的开发,我没做过。VC,我们看到的界面,只是一个编辑窗口,编译的时候,它会调用相关的编译器,并使用某些设定的编译参数。我猜测如下:
Symbian的软件包里,应该带有编译器和相关的支持库,并且在安装的时候,它会修改VC的配置文件,使得其中关于Symbian的工程,调用自带的编译器和自设的参数来编译程序。
‘肆’ 怎么把broadcom sdk编译进内核
LINUX 的内核编译 1.编译内核指的时通常的内核 2.应为内核可以将驱动和功能模块动态的载入内核,所以在需要的时间把功能模块 动态载入,所以就有了,内核模块的编译
‘伍’ eclipse android sdk怎么编译
还是推荐使用Android Studio,毕竟是谷歌的亲儿子,开发Android会事半功倍的。
‘陆’ android sdk多个版本 编译用哪个
永远只用最新的SDK版本,这是Google官方强烈建议的。开发者的app能运行的Android版本不是由SDK决定的,是由每一个项目的minSDK决定的。SDK都是向下兼容的。SDK在不断改进中,新的SDK会提供更强大开发工具,而且用4.0的SDK编译的2.1的apk的执行效率会比用2.1的SDK编译的更高。
至于每个app应该用什么minSDK ,应该根据应用具体的API来,如果app没有用到1.6以上SDK新提供的API,那么用1.6会在提供相同体验下反而会比2.1兼容更多机型.
附谷歌原版建议:
In order to provide the best user experience on the latest devices, we recommend that you use the latest platform version as your build target. You'll still be able to run your app on older versions, but you must build against the latest version in order to use new features when running on devices with the latest version of Android.To get started, download the latest Android version, plus the lowest version you plan to support (we recommend Android 2.2 for your lowest version).
‘柒’ 如何编译android sdk
如果没有真正开发板,又想深入到android framework里,或kernel里的话,就只能用android 的emulator了。 但是我们下载的android SDK没有源代码,我们没办法跟踪修改framework和kernel里的东西。
所以有了想尝试自己从头生成SDK的想法。
1. 首先下载编译android所有source code.
具体步骤这里不再赘述,参考ht tp:/ /source.and roid.c om/download
cd mydroid
repo init -u git://android.git.kernel.org/platform/manifest.git
repo sync
一点小提示: 有时候google的android服务器老是断,总不能让我们守在电脑旁边一直手工重新repo sync吧,这可是需要N个小时才能下载完的啊。
我们就写个小脚本让电脑自动repo sync,直到下载成功为止:
#!/bin/sh
count=0
ret=1
while [ $ret -ne 0 ]
do
repo sync
ret=$?
count=$(( $count + 1))
echo "try $count, ret: $ret"
done
echo "try $count, ret: $ret"
把上面的内容复制到一个文件里tryrepo.sh
然后修改tryrepo.sh的属性,开始自动工作吧。第二点早上应该就大功告成了
chmod a+x tryrepo.sh
./tryrepo.sh
2. 编译android, 生成SDK
make sdk
漫长的等待之后,SDK生成了,在目录:mydroid\out\host\linux-x86\sdk\android-sdk_eng.yanbin_linux-x86\platforms\
在linux下面可以直接运行mydroid\out\host\linux-x86\sdk\android-sdk_eng.yanbin_linux-x86\tools\android 就可以看到熟悉的android emulator启动界面。
如果想在windows XP下使用这个SDK和emulator, 最简单的方法是:
(1)自己下载一个最新的windows版本的android 2.0 SDK。
(2)把mydroid\out\host\linux-x86\sdk\android-sdk_eng.yanbin_linux-x86\platforms\下的东西复制到windows版SDK的platforms下。
(3) 然后把platforms下android-2.0下tools目录下的几个.exe文件复制到自己编译的SDK目录下的tools目录下。
‘捌’ openwrt怎么通过sdk编译
先查询出article,为持久态后再执行删除。
修改后的代码为:
@RequestMapping("/articledelete.do")
public String deleteArticle(Long id){
Article a = articleService.findById(id);
articleService.delete(a);
return "redirect:/user/articlelist.do";
}
‘玖’ android sdk怎么开发
编译自己的SDK
特种设备会有一些额外的功能,这样就需要给应用层提供特定的API,从而需要定制自己的SDK。
编译自己的sdk还是很简单的,因为google帮我们做好基础工作,步骤如下:
$ source build/envsetup.sh
$launch 'what you want'
$ make update-api
$ make PRODUCT-sdk-sdk -j81234
如果一切顺利的编译完成,那么恭喜你。如果遇到错误也不要紧,因为这是正常的。下面列出我遇到的主要错误:tools/base没有。
error1:
sdk/eclipse/scripts/create_all_symlinks.sh: line 285: cd: tools/base: No such file or directory
...
sdk/eclipse/scripts/create_all_symlinks.sh: line 285: cd: tools/base: No such file or directory
...
sdk/eclipse/scripts/create_all_symlinks.sh: line 47: cd: tools/base: No such file or directory
make: *** [out/host/linux-x86/obj/EXECUTABLES/monitor_intermediates/monitor] Error 1123456
modify create_all_symlinks.sh
将文件中所有需要tools/base的地方都注释掉。
error2:
sdk/build/tools.atree:124: couldn't locate source file: tools/base/templates/projects
sdk/build/tools.atree:125: couldn't locate source file: tools/base/templates/activities
sdk/build/tools.atree:126: couldn't locate source file: tools/base/templates/gradle
sdk/build/tools.atree:127: couldn't locate source file: tools/base/templates/other
make: *** [out/host/linux-x86/sdk/android-sdk_eng.linc_linux-x86.zip] Error 4412345
modify tools.atree
$ vim sdk/build/tools.atree1
# Templates
#tools/base/templates/projects tools/templates/projects
#tools/base/templates/activities tools/templates/activities
#tools/base/templates/gradle tools/templates/gradle
#tools/base/templates/other tools/templates/other
123456
再次修改后就离成功不远了,下面是成功的log。
Package SDK: out/host/linux-x86/sdk/android-sdk_eng.linc_linux-x86.zip
SDK: warning: including GNU target out/target/proct/generic/system/lib/libgccdemangle.so
123
使用SDK
将android-sdk_eng.linc_linux-x86.zip解压到你喜欢的目录,在Android Studio的设置如下:
File—>Project Structure—>SDK Location,填写你刚刚解压的目录即可。
试着用自定义的API做测试吧,good luck!
参考:
http://blog.csdn.net/edsam49/article/details/44996353#reply
‘拾’ SDK的编译命令
直接运行make或make install
里边有source和tools目录,里边有没有新生成的文件?