当前位置:首页 » 安卓系统 » androidsdk结构

androidsdk结构

发布时间: 2022-09-25 12:51:02

❶ androidsdk怎么安装

Android SDK的安装与环境变量配置步骤: 一、配置Andriod环境变量 1、下载Android SDK,点击安装,直接默认路径即可 2、默认路径安装后,安装完成,开始配置环境变量。 3、打开计算机属性——高级系统设置——环境变量(如上文) 4、新建一个环境变量,变量名:ANDROID_HOME,变量值:D:\Program Files\android-sdk-windows(以你安装目录为准,确认里面有tools和add-ons等多个文件夹),点击确认。 5、在用户变量PATH后面加上变量值;%ANDROID_HOME%\platform-tools;点击确认即可。 在系统变量path中添加;D:\Program Files\android-sdk-windows\tools 6、Android SDK配置完成,接下来验证配置是否成功。 7、点击运行——输入cmd——回车——输入adb——回车,如果出现一堆英文,如下图所示,即表示配置成功,在输入Android,启动Android SDK Manager。 二、下载和安装Andriod SDK 1网站上,如下图,下载相应的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整个体系比较了解的话,可以选择只安装自己需要用到的部分.

❷ 如何搭建 android 开发环境

一.认识android的架构
Android其本质就是在标准的linux系统上增加了java虚拟机Dalvik,并在Dalvik虚拟机上搭建了一个JAVA的application framework,所有的应用程序都是基于JAVA的application framework之上。
android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。
二.搭建环境
搭建开发环境
对国内的开发者来说最痛苦的是无法去访问android开发网站。为了更好的认识世界,对程序员来说,会翻墙也是的一门技术,带你去领略墙外的世界,好了,不废话了, 国内开发者访问(androiddevtools) 上面已经有了所有你要的资源,同时可以下载到我们的主角framework
但是这样的搭建只能去阅读源代码,我们无法去更进一步去实现自己的rom,我们看到锤子的系统在早期的开放rom是自己从新实现了framework的代码,现在看起来他成功了,所以我们还要去搭建android系统的源码编译环境。
搭建源码编译环境

三.开始主题
在一开始写c程序的时候都有一个运行的入口,比如
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
//这里的main就是应用的入口
int main(int argc, const char * argv[]){
return 0;
}
在计算机网络原理中我们用socket实现一个服务器端,不断的接听客户端的访问,而且他的代码是这样实现的:
#include <winsock2.h>
#pragma comment(lib, "WS2_32.lib")
#include <stdio.h>
void main()
{
WORD wVersionRequested;//版本号
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(2, 2);//2.2版本的套接字
//加载套接字库,如果失败返回
err = WSAStartup(wVersionRequested, &wsaData);
if (err != 0)
{
return;
}
//判断高低字节是不是2,如果不是2.2的版本则退出
if (LOBYTE(wsaData.wVersion) != 2 ||
HIBYTE(wsaData.wVersion) != 2)
{
return;
}
//创建流式套接字,基于TCP(SOCK_STREAM)
SOCKET socSrv = socket(AF_INET, SOCK_STREAM, 0);
//Socket地址结构体的创建
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);//转换Unsigned long型为网络字节序格
addrSrv.sin_family = AF_INET;//指定地址簇
addrSrv.sin_port = htons(6000);
//指定端口号,除sin_family参数外,其它参数都是网络字节序,因此需要转换
//将套接字绑定到一个端口号和本地地址上
bind(socSrv, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));//必须用sizeof,strlen不行
listen(socSrv, 5);
SOCKADDR_IN addrClient;//字义用来接收客户端Socket的结构体
int len = sizeof(SOCKADDR);//初始化参数,这个参数必须进行初始化,sizeof
//循环等待接受客户端发送请求
while (1)
{
//等待客户请求到来;当请求到来后,接受连接请求,
//返回一个新的对应于此次连接的套接字(accept)。
//此时程序在此发生阻塞
SOCKET sockConn = accept(socSrv, (SOCKADDR*)&addrClient, &len);
char sendBuf[100];
sprintf(sendBuf, "Welcome %s to JoyChou",
inet_ntoa(addrClient.sin_addr));//格式化输出
//用返回的套接字和客户端进行通信
send(sockConn, sendBuf, strlen(sendBuf)+1, 0);//多发送一个字节
//接收数据
char recvBuf[100];
recv(sockConn, recvBuf, 100, 0);
printf("%s\\n", recvBuf);
closesocket(sockConn);
}
}
他采用了一个while死循环去监听客户端的请求。

先上源代码
public final class ActivityThread {
public static void main(String[] args) {
SamplingProfilerIntegration.start();
CloseGuard.setEnabled(false);
Environment.initForCurrentUser();
EventLogger.setReporter(new EventLoggingReporter());
Security.addProvider(new AndroidKeyStoreProvider());
final File configDir = Environment.getUserConfigDirectory(UserHandle.myUserId());
TrustedCertificateStore.setDefaultUserDirectory(configDir);
Process.setArgV0("<pre-initialized>");
Looper.prepareMainLooper();
//从中可以看到为app开辟了一个线程进入了looper之中
ActivityThread thread = new ActivityThread();
thread.attach(false);
if (sMainThreadHandler == null) {
sMainThreadHandler = thread.getHandler();
}
AsyncTask.init();
if (false) {
Looper.myLooper().setMessageLogging(new
LogPrinter(Log.DEBUG, "ActivityThread"));
}
Looper.loop();
throw new RuntimeException("Main thread loop unexpectedly exited");
}
}
看到源码失望了,没有一个while循环啊,其实用了他方法实现
//用一个looper的机制循环监听响应
Looper.prepareMainLooper();
Looper.loop();
进一步深入代码
public static void loop() {
final Looper me = myLooper();
if (me == null) {
throw new RuntimeException("No Looper; Looper.prepare() wasn't called on this thread.");
}
final MessageQueue queue = me.mQueue;
Binder.clearCallingIdentity();
final long ident = Binder.clearCallingIdentity();
// 在这里看到了一个循环监听消息
for (;;) {
Message msg = queue.next(); // might block
if (msg == null) {
// No message indicates that the message queue is quitting.
return;
}
Printer logging = me.mLogging;
if (logging != null) {
logging.println(">>>>> Dispatching to " + msg.target + " " +
msg.callback + ": " + msg.what);
}
msg.target.dispatchMessage(msg);
if (logging != null) {
logging.println("<<<<< Finished to " + msg.target + " " + msg.callback);
}
// Make sure that ring the course of dispatching the
// identity of the thread wasn't corrupted.
final long newIdent = Binder.clearCallingIdentity();
if (ident != newIdent) {
Log.wtf(TAG, "Thread identity changed from 0x"
+ Long.toHexString(ident) + " to 0x"
+ Long.toHexString(newIdent) + " while dispatching to "
+ msg.target.getClass().getName() + " "
+ msg.callback + " what=" + msg.what);
}
msg.recycleUnchecked();
}
}

❸ 如何查看Android SDK API文档

你问这个,就说明你现在就在看这个,但是不晓得怎么看
个人经验: 一般api都是以树的方式给你,最上层是下一层的父亲,也就是说下层类继承自上层类,,这是基础
然后,每一个类展开后是单独一个树结构,这个类的作用,一般都是它功能的英文缩写,这个类打开后,下面是该类所具有的方法(一般我们就是调用这个方法,每一个方法都会给你一个返回值),静态类方法直接通过类名引用,其它方法一般通过实例化对象引用(引用有许多种方法,这里不细究)
看到这,你就应该知道sdk中api有和作用了,说白了,它就是给我们许多别人封装好的类,类里面有许多的方法,我们调用相应的方法,处理相应的问题,得到相应的结果而已

❹ android 的每个版本 sdk 里面带的 sample 之间的关系是什么样的

我打开每个 android sdk 版本里面的 sample 大概看了一下,发现前面几个版本像是在后面的版本里面包含前面版本的内容,比如 sdk 8 包含 sdk 7 sample 里面的内容,但是到 sdk 18 的时候里面的 sample 的组织结构都改变了,虽然每个版本的 sample 大小都是递增的,但是不完全后面的版本的 sample 包含了前面的版本的 sample。

❺ myeclipse怎么搭建android开发环境

myeclipse搭建android开发环境安装adt就可以。

工具/原料

eclipse

jdk

方法/步骤

  1. 从eclipse中选择help下面的install new software

❻ 安装android studio的sdk有什么用

Android
studio安装完后会自带
sdk
的,如果没有
sdk
的话,程序是无法编译运行的,sdk的路径自己可以修改,它的目录结构如下所示:
Android
Studio里的设置界面如下:
进入SDK
Manager可以对
sdk
版本进行下载更新。
注意:自带的
sdk
版本可能会比较低,因此可以根据需要下载对应的版本。

❼ androidsdk环境变量怎样配置

1、下载java,并且安装。 下载地址: download-1501626.html
2、安装的时候,最好别改安装路径,默认路径一直点下一步即可!
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或者其它任何名字。

❽ android sdk和api的区别

Eclipse插件的安装方法大体有以下三种:第一种:直接复制法 假设Eclipse的安装目录在C:\eclipse,解压下载的eclipse 插件或者安装eclipse 插件到指定目录AA(如:c:\AA)文件夹,打开AA 文件夹,在AA文件夹里分别包含两个文件夹features和plugins ,然后把两个文件夹里的文件分别复制到C:\eclipse下所对应的文件夹下的features 和plugins 下,一般的把插件文件直接复制到eclipse目录里是最直接也是最愚蠢的一种方法!因为日后想要删除这些插件会非常的困难,不推荐使用。 注意:直接将插件包解压到plugins文件夹下之后,重启eclipse,可能不会加载新的插件。 解决方法是: 1、打开命令行,到当前eclipse的目录下,输入eclipse -clean,重新启动eclipse,这样eclipse就会加上新的插件了。 2、如果插件不能生效,则请将eclipse\configuration\org.eclipse.update目录删除后再启动eclipse; 你可以在eclipse的菜单"Help"-->"About Eclipse SDK"-->"Feature Details" 和"Plug-in Details"中看到新安装的插件。 第二种:使用link文件法 a.假设Eclipse的安装目录在C:\eclipse,在该文件夹下,新建这样的目录结构C:\eclipse\PluginsEclipse\jode\eclipse; b.解压下载的eclipse 插件或者安装eclipse 插件到指定目录BB(如:C:\BB)文件夹,打开BB文件夹,然后把 BB文件夹里的两个文件夹features和plugins复制到刚刚新建好C:\eclipse\PluginsEclipse\jode\eclipse,这样eclipse中就有了两个插件目录features and plugins下。 c.在C:\eclipse目录中新建links(C:\eclipse\links)目录,在links目录中建立一个以link为扩展名的文本文件如jode.link,内容如下path=C:/eclipse/PluginsEclipse/jode 或者path=C:\\eclipse\\PluginsEclipse\\jode(插件的目录),保存后重启eclipse插件就会安装完成。 注意:link文件中path=插件目录的path路径分隔要用\\或是/ Java代码 /eclipse/ links/ jode.link webtools.link updateManager.link ... ... /eclipse/ links/ jode.link webtools.link updateManager.link ... ... 可以在eclipse的菜单"Help"-->"About Eclipse SDK"-->"Feature Details" 和"Plug-in Details"中看到新安装的插件。 第三种:使用eclipse自带图形界面安装 选择Help > Software Updates > Manager Configuration,再选择Add > Extension Location 找到你要安装插件的目录就可以了。使用eclipse的help->SoftwareUpdates ->Find and install... search for new features... 输入软件安装地址进行安装强烈推荐这种方法,优点很多比如可以方便的添加删除,也不用自己写link文件! 备注:Eclipse插件的目录结构 Java代码 /eclipse-plugins/ eclipse/ .eclipseextension features/ plugins/ 第2.3种方法所指向的目录都指的是"eclipse"目录, 如果用第3种方法,在eclipse这个目录下必须有文件.eclipseextension,如果下载的插件没有这个文件, 那就随便eclipse安装目录下的那个文件拷过去就行,只有有这么个文件就可以了,内容没什么用,主要是一些版本信息。例如: Java代码 id=org.eclipse.platform name=Eclipse Platform version=3.1.1 id=org.eclipse.platform name=Eclipse Platform version=3.1.1

❾ 如何离线安装android sdk

打开AndroidSDKManager可见大致分为三类下载:

第一个分类tools
第二个分类为各版本api
第三个分为Extras

从这三个类别中各选择一个并开始下载,此时打开右下角的查看日志按钮(红色手右边的那个按钮)可获取读取xml文件日志。
(如提示无法下载成功,可能所处网络无法正常访问下载地址,可在Tool>Options中勾选Forcehttps://...)

从认真查看日志文件,发现规律如下:
先加载一个xml文件,解析该xml文件,再从该xml文件中获取对应分类的文件的版本信息。

逐一打开这几个xml文件,发现就是描述各分类文件的版本信息的,此时我们可从xml文件查看各文件名,只需该文件名填入到这个下载地址即可完成下载:
https://dl-ssl.google.com/android/repository/******.zip(后面这个******.zip是根据你需要下载的文件进行对应填充)。

系统镜像地址前缀:

http://dl-ssl.google.com/android/repository/sysimg_armv7a-17_r02.zip
http://dl-ssl.google.com/android/repository/sys-img/mips/sysimg_mips-17_r01.zip
http://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-17_r01.zip


日志结构大致如下:

Fetchinghttps://dl-ssl.google.com/android/repository/addons_list-2.xml
ValidateXML
ParseXML
FetchedAdd-onsListsuccessfully

FetchingURL:https://dl-ssl.google.com/android/repository/repository-8.xml
ValidateXML:https://dl-ssl.google.com/android/repository/repository-8.xml
ParseXML:https://dl-ssl.google.com/android/repository/repository-8.xml
FoundSDKPlatformAndroid1.1,API2,revision1(Obsolete)
FoundSDKPlatformAndroid1.5,API3,revision4
FoundSDKPlatformAndroid1.6,API4,revision3
...略去....

ParseXML:https://dl-ssl.google.com/android/repository/addon.xml
FoundGoogleAPIs,AndroidAPI3,revision3
FoundGoogleAPIs,AndroidAPI4,revision2
FoundGoogleAPIs,AndroidAPI5,revision1(Obsolete)
...略去......

FetchingURL:https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
ValidateXML:https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
ParseXML:https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
(HAXM),revision3

...略去......


ParseXML:https://dl-ssl.google.com/android/repository/sys-img/mips/sys-img.xml
FoundMIPSSystemImage,AndroidAPI15,revision1
FoundMIPSSystemImage,AndroidAPI16,revision4
FoundMIPSSystemImage,AndroidAPI17,revision1

...略去......

ParseXML:https://dl-ssl.google.com/android/repository/sys-img/x86/sys-img.xml
FoundIntelx86AtomSystemImage,AndroidAPI10,revision2
FoundIntelx86AtomSystemImage,AndroidAPI15,revision1
FoundIntelx86AtomSystemImage,AndroidAPI16,revision1
FoundIntelx86AtomSystemImage,AndroidAPI17,revision1
FoundIntelx86AtomSystemImage,AndroidAPI18,revision1
...略去......

❿ 定位软件的SDK与普通APP的SDK工作机制有什么不同

先说apk,APK是AndroidPackage的缩写,即Android安装包(apk),是安卓的应用程序的文件格式。安卓专属,区别于iOS应用程序的ipa,pxl,deb格式,wp8(10)应用程序的xap(appx)格式。

一.格式定义
在Android平台中dalvik vm的执行文件被打包为apk格式,最终运行时加载器会解压然后获取编译后的androidmanifest.xml文件中的permission分支相关的安全访问,但仍然存在很多安全限制,如果你将apk文件传到/system/app文件夹下会发现执行是不受限制的。安装的文件可能不是这个文件夹,而在androidrom中,系统的apk文件默认会放入这个文件夹,它们拥有着root权限。

二.文件结构
1. META-INF\ (注:Jar文件中常可以看到);
2. res\ (注:存放资源文件的目录) ;
3. AndroidManifest.xml (注:程序全局配置文件) ;
4. classes.dex (注:Dalvik字节码);
5. resources.arsc (注:编译后的二进制资源文件)。

三.开发环境
Android是一个基于Java的开发环境,它是一种与广被接受的 Java极为类似,而且也比C++容易得多的开发语言,这是一种规范的移动开发环境。Google也在API文档的书写和样例的提供上做了很出色的工作。
获取SDK
下载并安装android的SDK[软件开发套件],这套SDK主要包括有核心库文件,一个模拟器,开发工具和一些示范的样例文件。推荐使用Eclipse 和androideclipse 扩展。如果只是使用android,Eclipse IDE就已经足够了,但如果是第一次开发Java应用,建议下载完整的Java SE 开发工具 (JDK) 因为它包括签发应用程序所需要的工具。
应用架构
android应用架构很关键,如果不学习它,设计出来的游戏将是一种很难修复bug的产品。 需要了解应用程序、活动、Intents以及它们是如何互相联系交互的,Google在这儿提供了良好的信息架构。真正重要的是,要理解为什么在设计的游戏中需要不止一个的活动进程以及如何设计一个用户体验良好的游戏。这些都应当配合到应用的生命周期中。
应用的生命周期
应用的生命周期是由AndroidOS操作系统进行管理的活动进程都将做为系统命令进行创建,正确处理这些事件对一个应用程序来说是极为重要的,因为终端用户不会知道什么是正确的。最好在开始设计游戏之前搞明白这些,因为这有助于节省调试时间以及避免代价高昂的重新设计。对大多数应用而言,默认设置即可开始工作,但对游戏而言,可能需要调整单态实例的信号为打开。在默认情况下,Android会新建一个活动实例进程,因为它认为这是比较合适的,而游戏,可能只希望有一个活动的实例进程,这有一点儿影响,它需要了解一些系统状态的管理。

四.apk反编译
apk反编译就是通过使用apk编译工具将apk文件中的源文件和资源反编译出来,得到的源文件和资源文件可以进行处理后再进行编译,以达到个性化定制,汉化apk等目的。[1]
apk反编译工具
1、最典型的apk编译工具的核心是apktool,但是因为操作需要调用cmd命令,所以出现了很多具有可视化界面的各种编译工具,像easyapk,apkdb,doapk
2、dex2jar.jar,将apk中的classes.dex转化成Jar文件,再通过jd-gui工具反编译jar文件。
apk编译方法
使用apkdb编译apk文件只需要在安装apkdb后直接右击反编译就可以将apk文件反编译出来
1、使用原生apktool工具,需要将apktool的两个文件释放到window目录下,在cmd中使用 apktool d apk文件名 命令来编译apk文件,此时命令行的执行目录与apk文件所在目录必须一致。
2、首先将apk文件,将后缀改为zip,解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的;将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex。
再说APP,APP指的是智能手机的第三方应用程序,Application的缩写 。简单来说就是智能设备(包括手机,平板,智能电视等~~)所用的软件!

热点内容
如何登录男朋友的微信密码 发布:2025-01-16 07:41:14 浏览:194
宝骏解压流程 发布:2025-01-16 07:35:35 浏览:2
两匹压缩机多少钱 发布:2025-01-16 07:29:19 浏览:635
个人pc搭建游戏服务器 发布:2025-01-16 07:27:09 浏览:970
存储剩余照片 发布:2025-01-16 07:25:01 浏览:50
ftp解除限制上传文件个数 发布:2025-01-16 07:16:26 浏览:348
梯度下降法python 发布:2025-01-16 07:10:43 浏览:520
加载并编译着色器apex 发布:2025-01-16 07:00:08 浏览:59
方舟出售脚本 发布:2025-01-16 06:57:55 浏览:955
钉钉代理服务器Ip地址和瑞口 发布:2025-01-16 06:57:05 浏览:699