androidsdk环境变量怎样配置
androidsdk环境变量怎样配置
1、下载java,并且安装。 下载地址: download-1501626.html2、安装的时候,更好别改安装路径,默认路径一直点下一步即可!
3、安装完成后,接下来就是配置java环境变量了。
4、打开计算机属性,点击高级系统设置
5、选择“高级”-“环境变量”
二、 关于JDK 安装,以及Java环境的设置
1、下载JDK1.6,选择对应的安装路径
2、配置相应的Java 环境变量
A、属性名称:JAVA_HOME
属性值:C:Program FilesJavajdk1.6.0_02
B、属性名称:PATH
属性值:;%JAVA_HOME%bin;%JAVA_HOME%jrebin
C、属性名称:CLASSPATH
属性值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar
要加.表示当前路径,另外,%JAVA_HOME%就是引用前面指定的JAVA_HOME
6. 关于环境变量是否安装成功的测试
“开始”->;“运行”,键入“cmd”;
键入命令命令,出现画面,说明环境变量配置成功:
A、java -version;
B、java;
C、javac;
Android SDK的安装与环境变量配置
一、配置Andriod环境变量
1、下载Android SDK,点击安装,直接默认路径即可! 下载地址:http://developer.android.com/sdk/index.html
2、默认路径安装后,安装完成,开始配置环境变量。
3、打开计算机属性——高级系统设置——环境变量(如上文)
4、新建一个环境变量,变量名:ANDROID_HOME,变量值:D:Program Filesandroid-sdk-windows(以你安装目录为准,确认里面有tools和add-ons等多个文件夹),点击确认。
5、在用户变量PATH后面加上变量值;%ANDROID_HOME%platform-tools;点击确认即可。 在系统变量path中添加;D:Program Filesandroid-sdk-windowstools
6、Android SDK配置完成,接下来验证配置是否成功。
7、点击运行——输入cmd——回车——输入adb——回车,如果出现一堆英文,如下图所示,即表示配置成功,在输入Android,启动Android SDK Manager。
二、下载和安装Andriod SDK
1.SDK下载
去 http://www.android.com/ 在那个页面中有developers链接,点击后链接到developer.android.com网站上,如下图,下载相应的sdk版本就是了,由于我的电脑的操作系统是windows,所以我直接在选择了android-sdk_r12-windows(图中有标识).
下载完成后,解压后得到android-sdk-windows文件夹,该文件夹包含如下文件结构:
(1)add-ons:该目录存放额外的附件软件。刚解压时该目录为空。
(2)platforms:该目录存放不同版本的Android版本。刚解压时该目录为空。
(3)tools:该目录存放大量的Android开发,调试工具
(4)SDK Manager.exe:该程序就是Andriod SDK管理器。
(5)AVD Manager.exe:该程序就是Andoid虚拟设备。
(6)docs:该文件夹存放了Android SDK开发文件和API文档等
(7)platforms-tools:该文件夹存放Android平台和相关工具
(8)samples:该文件夹存放不同的Android平台和示例程序。
2.安装sdk开发使用的相应的包
运行之后安装了sdkmanager,然后sdkmanager启动后会去android仓库去取还未安装的包的信息,如下图(由于我的系统中已安 装好,因此每个包前面都是绿色打勾的),为了偷懒,我直接就选择了accept all,将所有的包安装上.其实,如果自己对android整个体系比较了解的话,可以选择只安装自己需要用到的部分.
三、在eclipes中配置和安装ADT(Android Development Tools)
1.安装ADT
首先的下载和安装Eclipse,登陆 http://www.eclipse.orgEclipse 站点,下载 IDE for java EE Devlelopers的最新版本,然后安装。
ADT是eclipse的一个插件,如同cdt和jdt一个道理.要开发android程序,至少要有个cde(集成开发环境).而android官方推 荐的是eclipse.并且为eclipse下开发android准备了ADT这样一个插件.有了这个插件,就能比较方便的开发android程序了.
然后点击 Help->Install new Software,在弹出的窗口中点击add按钮
name:AndroidADT或者其它任何名字。
Mac下怎么安装Android SDK啊?我现在已经安装好eclipse和ADT了,SDK也已经下载下来了,接下来该怎么做?
下载的SDK是:android-sdk-macosx,官网进不去,这是在一个下载网站上下载的。请大神帮帮小弟!解决了的话再追加三十分!!

1.首先应该准备好mac平台的eclipse,并解压安装;
2.下载mac版本的android sdk,解压到指定的目录(其实这个只是个SDK与AVD配置的管理软件);
下面分享相关内容的知识扩展:
android SDK下各目录的用途,以及在不同系统下哪些是通用的
1. add-ons 这里面保存着附加库,比如google Maps,如果安装了OPhone SDK,这里也会有一些类库在里面。2. docs 这里面是Android SDK API参考文档,所有的API都可以在这里查到。
3. extras/market_licensing 作为Android Market版权保护组件,一般发布付费应用到电子市场可以用它来反盗版。
4. platforms 是每个平台的SDK真正的文件,里面会根据API Level划分的SDK版本。
5. platform-tools 保存着一些通用工具,比如adb、和aapt、aidl、dx等文件。
6. samples 是Android SDK自带的默认示例工程。
7. tools 作为SDK根目录下的tools文件夹,这里包含了重要的工具,比如ddms用于启动Android调试工具。
8. extras 该文件夹下存放了google提供额USB驱动、Intel提供的硬件加速等附加工具包。
AndroidNDK开发简介NDK和SDK以及JNI有什么关系_安卓ndk是干嘛的
NDK:AndroidNDK是在SDK前面又加上了“原生”二字,即NativeDevelopmentKit,因此又被Google称为“NDK”。
NDK全称:NativeDevelopmentKit。
NDK是一系列工具的 *** 。
*NDK提供了一系列的工具,帮助开发者快速开发C(或C)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。
*NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。
*NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。
其实:
NDK就是能够方便快捷开发.so文件的工具。JNI的过程比较复杂,生成.so需要大量操作,而NDK就是简化了这个过程。
AndroidSDK:
SDK(softwaredevelopmentkit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的 *** 。因此!AndroidSDk指的既是Android专属的软件开发工具包
JNI:
JavaNativeInterface(JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI是本地编程接口,它使得在Java虚拟机(VM)内部运行的Java代码能够与用其它编程语言(如C、C和汇编语言)编写的应用程序和库进行交互操作
当然一般需要进行如下操作流程:
1)编写java程序:这里以HelloWorld为例。为了实现在java代码中调用c函数printf。
代码1:
classHelloWorld{
publicnativevoid();
static{
System.loadLibrary("hello");
}
publicstaticvoidmain(String[]args){
newHelloWorld().();
}
}
声明native *** :如果你想将一个 *** 做为一个本地 *** 的话,那么你就必须声明改 *** 为native的,并且不能实现。
Load动态库:System.loadLibrary("hello");
这里一般是以static块进行加载的。同时需要注意的是System.loadLibrary()的参数“hello”是动态库的名字。
2)编译
javacHelloWorld.java
3)生成扩展名为h的头文件javah?
JNIEXPORTvoidJNICALLJava_HelloWorld_(JNIEnv*,jobject);
这个h文件相当于我们在java里面的接口,这里声明了一个Java_HelloWorld_(JNIEnv*,jobject) *** ,然后在我们的本地 *** 里面实现这个 *** ,也就是说我们在编写C/C程序的时候所使用的 *** 名必须和这里的一致)。
4)编写本地 *** 实现和由javah命令生成的头文件里面声明的 *** 名相同的 ***
代码2:
#include"jni.h"
#include"HelloWorld.h"
#includeotherheaders
JNIEXPORTvoidJNICALLJava_HelloWorld_(JNIEnv*env,jobjectobj)
{
printf("Helloworld!/n");
return;
}
注意代码2中的第1行,需要将jni.h(该文件可以在%JAVA_HOME%/include文件夹下面找到)文件引入,因为在程序中的JNIEnv、jobject等类型都是在该头文件中定义的;另外在第2行需要将HelloWorld.h头文件引入。然后保存为.c就ok了。
5)生成动态库
这里以在Windows中为例,需要生成dll文件。在保存.c文件夹下面,使用VC的编译器cl成。cl-I%java_home%/include-I%java_home%/include/win32-LD.c-Fehello.dll注意:生成的dll文件名在选项-Fe后面配置,这里是hello,因为在HelloWorld.java文件中我们loadLibary的时候使用的名字是hello。
另外需要将-I%java_home%/include-I%java_home%/include/win32参数加上,因为在第四步里面编写本地 *** 的时候引入了jni.h文件。
疑难杂症记录3:广告模块以及三方sdk同步升级androidx问题
广告模块引入了很多三方sdk,这里的问题体现在google的admob上,期望是将admob升级到18.3.0版本,结果主工程中由于引入了firebase,具体来讲就是admob和firebase都引入了google的基础服务gms,但版本没统一导致了Duplicate class的错误。
期望将admob升级到18.3.0版本
com.google.android.gms:play-services-ads:18.3.0 这个版本里面使用了
com.google.android.gms:play-services-measurement-base:17.1.0
我们项目中还使用了两个google的服务框架,分别如下(已是更高版本了):
com.google.android.gms:play-services-gcm:17.0.0
com.google.firebase:firebase-core:17.0.0
这两个包里面使用了com.google.android.gms:play-services-measurement-base:17.0.0,导致工程现在编译时报错:Duplicate class com.google.android.gms.internal.measurement.zzio found in modules classes.jar (com.google.android.gms:play-services-measurement-base:17.1.0) and classes.jar (com.google.android.gms:play-services-measurement:17.0.0)
解决 *** :将admob18.3.0降到18.0.0,因为这个版本里面是play-services-measurement-base:17.0.0
上面已经定调了admob使用18.0.0,内部的play-services-measurement-base是17.0.0,更内部的firebase-iid是19.0.0。这个依赖是确定下来的了。
而在主工程中报错日志如下:
In project 'app' a resolved Google Play services library dependency depends on another at an exact version (e.g. "[17.0.4]", but isn't being resolved to that version. Behavior exhibited by the library will be unknown.
Dependency failing: com.google.firebase:firebase-messaging:17.3.4 -> com.google.firebase:firebase-iid@[17.0.4] , but firebase-iid version was 19.0.0.
日志中说的也很清楚了,要将firebase-iid 17.0.4 升级到 19.0.0。下面要解决的问题是将com.google.firebase:firebase-messaging:17.3.4这个升级到内部依赖了firebase-iid version19.0.0的版本,通过在 https://mvnrepository.com/ 上查询搜索关键词:firebase-messaging,定位到firebase-messaging:19.0.0内部依赖了firebase-iid version19.0.0,那么在主工程中将firebase-messaging升级到19.0.0就将问题解决了。
说实话,google下面的各类服务框架包纷繁复杂,版本又不统一,在同时引入多个google的服务框架时势必会遇到这种问题,那么后续解决该类问题的思路是怎样呢? 总的思路是:先定一个核心服务的目标版本,然后其他服务适配该核心服务版本。 比如确定了要将admob升级到18.3.0,那么非核心的服务就需要将其内部依赖的paly-service-base保持一致,基本上就不出现Duplicate class的问题。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。