cocos2d-x 3.0 Android编译环境的搭建win7+Eclipse

Windows7 64位系统搭建Cocos2d-x 2.2.1最新版以及Android交叉编译环境(详细教程) 声明:本文在参考了以下博客,经过自己的摸索后实际操作得出,本教程系本人原创,由于升级后的cocos2d-x有了一些变化,目前的博客还没有关于Cocos2d-x 2.2.1最新版搭建Android交叉编译环境组建的说明,所以我这几天研究了一下,现在将具体的创建方法分享出来,也给自己学习Cocos2d-x做个笔记。 阅读详情

安装工具



原文地址:http://www.idcfree.com/article-1488-1.html


1. 配置JDK

本人的系统是Win7 64位版,但安装的是JDK7,Windows X86版。
假设安装目录在: C:\Program Files (x86)\Java\jdk1.7.0_21;当然也可以是其他地方
  • 设置环境变量:
JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_21
CLASSPATH=.;%JAVA_HOME%\lib;
Path增加 %JAVA_HOME%\bin;

本文假设你知道怎么设置环境变量,如果不知道,请使用搜索引擎查找相关资料,设置完后打开cmd,输入java -version
如果出现下面提示,表明环境变量设置成功:
C:\Users\arlin>java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) Client VM (build 23.21-b01, mixed mode, sharing)

2. 下载Android SDK

Google为Android开发者提供了ADT(Android Developer Tools),里面包含了SDK和Eclipse。
可以选择32位或64位版本,我选择的是32位版的,把它解压到一个目录,我这里是: d:\adt-bundle-windows-x86\,目录结构如下:
--<adt-bundle-windows-x86>
--<eclipse>
--<sdk>
--SDK Manager.exe

3. 下载Android NDK

同样有32位和64位版可选,我选择的是32位版的,把它解压到adt同目录下,现在adt的目录结构如下:
--<adt-bundle-windows-x86>
--<eclipse>
--<sdk>
--< android-ndk-r8e>
--SDK Manager.exe

4. 下载ANT

ANT是为了自动构建Android程序用。
我选择的是: apache-ant-1.9.3-bin.zip,同样解压到adt目录下,现在adt的目录结构如下:
--<adt-bundle-windows-x86>
--<eclipse>
--<sdk>
--< android-ndk-r8e>
--<apache-ant-1.9.3>
--SDK Manager.exe

5. 下载Python

  • 原来cocos2dx在不同平台下必须用不同的脚本来创建和构建工程,3.0以后都统一用python了,所以Windows下需要安装python环境:
下载地址: https://www.python.org/ftp/python/2.7.3/python-2.7.3.msi
原来下载了最新的版本,使用setup.py的时候发现有语法错误,所以最好使用2.7.3版本,亲测过没有问题
  • 配置环境变量:最新版本可以自动加进path环境变量,但2.7.3不行,所以我们只能自己设置一下,假设我的Python安装在:d:\Python27\
把这个路径加到path环境变量中, 当我们在cmd下输入python,出现下面字样,就说明环境变量设置正确了:
C:\Users\arlin>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

cocos2d-x下载与配置


1. 下载cocos2d-x

目前最新版本是3.0RC,下载地址是: http://cocostudio.download.appget.cn/Cocos2D-X/3.0RC0/cocos2d-x-3.0rc0.zip
下载完解压到一个地方,我这里: f:\cocos2dx\cocos2d-x-3.0rc0\

2. 设置环境变量

cc需要下面几个环境变量,用于后面的新建工程,构建工程等:
  • COCOS_CONSOLE_ROOT: cocos控制台路径,控制台用于新建,构建,发行工程。
  • NDK_ROOT: NDK根目录
  • ANDROID_SDK_ROOT: SDK根目录
  • ANT_ROOT: ANT根目录
这几个环境变量是通过cocos2d-x根目录下的setup.py来配置的,我们启动cmd,运行setup.py:
F:\cocos2dx\cocos2d-x-3.0rc0>setup.py

此时脚本需要我们提供NDK,SDK,ANT的路径,我们根据之前放的路径输入就是了,整个命令过程如下:
Setting up cocos2d-x...

-> Adding COCOS2D_CONSOLE_ROOT environment variable... OK
-> Added: COCOS_CONSOLE_ROOT = F:\cocos2dx\cocos2d-x-3.0rc0\tools/cocos2d-cons
ole/bin

-> Looking for NDK_ROOT envrironment variable... NOT FOUND
Please enter its path (or press Enter to skip): d:\adt-bundle-windows-x8
6\android-ndk-r8e
ADDED
-- Added: NDK_ROOT = d:\adt-bundle-windows-x86\android-ndk-r8e

-> Looking for ANDROID_SDK_ROOT envrironment variable... NOT FOUND
Please enter its path (or press Enter to skip): D:\adt-bundle-windows-x8
6\sdk
ADDED
-> Added: ANDROID_SDK_ROOT = D:\adt-bundle-windows-x86\sdk

-> Looking for ANT_ROOT envrironment variable... NOT FOUND
Please enter its path (or press Enter to skip): d:\adt-bundle-windows-x8
6\apache-ant-1.9.3\bin
ADDED
-> Added: ANT_ROOT = d:\adt-bundle-windows-x86\apache-ant-1.9.3\bin

Set up successfull:
COCOS_CONSOLE_ROOT was added into registry
NDK_ROOT was added into registry
ANDROID_SDK_ROOT was added into registry
ANT_ROOT was added into registry

Please restart the terminal or restart computer to make added system variables t
ake effect

命令最后提示我们重启终端或者重启系统,以让这些环境变量生效,一般我们关闭cmd和资源浏览器就行了,如果后面遇到环境变量找不到的错误,直接重启系统试试吧。
要测试环境变量是否生效,重新打开cmd,输入下面命令查看,正常应该是这样:
F:\cocos2dx\cocos2d-x-3.0rc0>set NDK_ROOT
NDK_ROOT=d:\adt-bundle-windows-x86\android-ndk-r8e

F:\cocos2dx\cocos2d-x-3.0rc0>set ANT_ROOT
ANT_ROOT=d:\adt-bundle-windows-x86\apache-ant-1.9.3\bin

F:\cocos2dx\cocos2d-x-3.0rc0>set ANDROID_SDK_ROOT
ANDROID_SDK_ROOT=D:\adt-bundle-windows-x86\sdk

F:\cocos2dx\cocos2d-x-3.0rc0>set COCOS_CONSOLE_ROOT
COCOS_CONSOLE_ROOT=F:\cocos2dx\cocos2d-x-3.0rc0\tools/cocos2d-console/bin

新建和构建工程


1. 新建工程

我们要用tools\cocos2d-console这个工具来新建工程,这个工具提供了下面几个功能:
  • new 创建一个新的工程
  • compile 编译当前工程,生成二进制文件,个人觉得写为build更贴切一些。
  • deploy 发布程序到一个平台
  • run 编译和发布,和运行程序
我们现在只用到new,让我们看看new提供了哪些参数,打到cmd,输入:
cocos new --help

得到下面帮助:
usage: cocos new [-h] [-p PACKAGE_NAME] -l {cpp,lua,js} [-d DIRECTORY]
[-t TEMPLATE_NAME] [--no-native]
[PROJECT_NAME]

创建一个新工程

必要参数:
PROJECT_NAME 工程名

可选参数:
-h, --help 显示帮助信息
-p PACKAGE_NAME, --package PACKAGE_NAME
设置包名,如com.colin.mbgame
-l {cpp,lua,js}, --language {cpp,lua,js}
使用的主要语言,可以是:[cpp | lua | js]
-d DIRECTORY, --directory DIRECTORY
工程所在的目录
-t TEMPLATE_NAME, --template TEMPLATE_NAME
要创建的工程模板名

lua/js 工程参数:
--no-native No native support.

现在我们在cmd中输入:
F:\cocos2dx>cocos new mygame1 -p com.colin.mbgame -l cpp -d f:\cocos2dx\mbgame

得到下面输出:
F:\cocos2dx>python F:\cocos2dx\cocos2d-x-3.0rc0\tools\cocos2d-console\bin\/cocos .py
new mygame1 -p com.colin.mbgame -l cpp -d f:\cocos2dx\mbgame
Runing command: new
> Copy template into f:\cocos2dx\mbgame\mygame1
> Copying cocos2d-x files...
> Rename project name from 'HelloCpp' to 'mygame1'
> Replace the project name from 'HelloCpp' to 'mygame1'
> Replace the project package name from 'org.cocos2dx.hellocpp' to 'com.colin.mbgame'

这表明我们已经成功创建一个工程,到 f:\cocos2dx\mbgame\看看,工程目录结构如下:
--<mygame1>
--<Classes>
--<cocos2d>
--<proj.android>
--<proj.ios_mac>
--<proj.linux>
--<proj.win32>
--<Resources>
--.cocos-project.json
--CMakeLists.txt

可以看到各种平台下的工程都创建出来了,同时它把cocos2d整个框架都拷贝过来了,这种好坏就见仁见智了,

2. 构建Android工程

同时是用到 cocos2d-console,这里要用的是compile这个命令,在cmd输入下面查看帮助:
f:\cocos2dx\mbgame\mygame1> cocos compile --help

usage: cocos compile [-h] [-s SRC_DIR] [-q] [-p PLATFORM] [-m MODE] [-j JOBS]
[--ap ANDROID_PLATFORM] [--source-map]

把当前工程编译为二进制

可选参数:
-h, --help 显示帮助信息
-s SRC_DIR, --src SRC_DIR
工程根目录,比如上面应该是f:\cocos2dx\mbgame\mygame1
如果不设,就为当前目录(cmd定位到的那个目录)
-q, --quiet less output
-p PLATFORM, --platform PLATFORM
选择一个平台 android|ios|mac|web|win32|linux
-m MODE, --mode MODE 编译模式 debug|release, 默认为debug.
-j JOBS, --jobs JOBS 半行编译,如果你有4核,可以设为4。

Android Options:
--ap ANDROID_PLATFORM
指定SDK版本?没试过,不敢枉下定论,保留英文:
parameter for android-update.Without the parameter,the
script just build dynamic library for project. Valid
android-platform are:[10|11|12|13|14|15|16|17|18|19]

Web Options:
--source-map Enable source-map

现在我们在cmd输入:
F:\cocos2dx\mbgame\mygame1>cocos compile -p android -j 4

意思就是说我们要编译当前目录下的Android工程,同时可以有4个编译任务,所以我的4核机器就满负的跑了,如无意外,应该可以看到编译开始了,最后如果看到下面这几句,说明编译成功:
BUILD SUCCESSFUL
Total time: 7 seconds
Move apk to F:\cocos2dx\mbgame\mygame1\bin\debug\android
build succeeded.

我们到 f:\cocos2dx\mbgame\mygame1\proj.android\bin\,可以看到 mygame1-debug.apk,说明构建完成。
我把它安装到手机上试跑,发现好像启动速度是快了很多,不知是不是心理作用。

在Eclipse下运行程序


还记得我们下的adt里面有eclipse吗,现在我们就来把工程导入到eclipse跑跑看
  • 到d:\adt-bundle-windows-x86\eclipse打到eclipse.exe
第一次会提示设置工作区,你可以设置工作区放在哪里,我这里为了演示就默认了。
  • 接下来我们要看看SDK和NDK的路径是否正确:
    • 选择Windwos/Preferences菜单项,打开选项对话框。
    • 选择Android结点,看看SDK Location是否正确,我这里为F:\software\adt-bundle-windows-x86-20131030\sdk,说明是正确的,如果没有值,就手动把SDK的根目录设进去。
    • 接着选择Android/NDK结点,在NDK Location输入d:\adt-bundle-windows-x86\android-ndk-r8e
  • 接下来我们来导入工程,选择file/import,打开导入对话框:
    • 选择Android/Existing Android Code Into Workspace,然后Next。
    • 第一步要先把libcocos2dx导进来:
      • 在Root Directory输入F:\cocos2dx\mbgame\mygame1\cocos2d\cocos\2d\platform\android\java
      • 此时列出libcocos2dx工程,点击finish把工程导进来。
    • 第二步导入我们的工程:
      • 在Root Directory输入F:\cocos2dx\mbgame\mygame1\proj.android。
      • 此时会列出mygame1工程,点击finish把工程导进来。
    • 最后连接手机,选择运行或调试就可以跑程序了。
  • 在导入工程到Eclipse时遇到几个坑,在这里记下来,免得后面的人继续踩这些坑:
    • 没有导libcocos2dx,只导mygame1时不会有编译错误,但跑起来后会ClassNotFound异常,说找不到org/cocos2dx/lib/Cocos2dxHelper类,这个问题搞了我好久,后来在论坛看到贴子才明白,希望后续官方有详细的文档。
    • 因为adt只包含了android4.4(api-19)的版本,所以默认使用的是这个版本,我自己拷了几个更低的版本,然后把Build target设为android2.3(api-9),此时运行程序会提示下面错误:
Unable to execute dex: java.nio.BufferOverflowException

后来在网上查了一下,发现是 Android SDK Build tools的BUG,把它升级到 19.0.3后就好了:打开SDK Manager,找到19.0.3的Android SDK Build Tools,安装之。
用ADS搞定CGH40010F的宽带连续F类功放:从阻抗计算到版图仿真的保姆级流程 本文详细介绍了使用ADS设计CGH40010F宽带连续F类功放的全流程,从阻抗计算到版图仿真。通过分析器件特性和理论基础,提供谐波阻抗匹配和版图协同验证的实用技巧,帮助射频工程师高效完成高效率功放设计。重点关注宽带连续F类功放的设计难点和调试方法,提升设计成功率。 阅读详情

相关推荐

RK3568+XS9922B+Android11双模视频输入:CVBS与AHD兼容驱动开发实战

本文详细介绍了基于RK3568平台和XS9922B解码芯片,在Android11系统上开发支持CVBS与AHD双模视频输入的兼容驱动实战。内容涵盖硬件选型、内核驱动框架分析、双模信号自动识别与配置、视频通道切换实现及图像质量优化等关键技术点,为车载监控等需要兼容新旧摄像头的项目提供完整解决方案。

js777的博客 377

cocos2d-x 3.0rc开发指南:Windows下Android环境搭建

安装工具 1. 配置JDK JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 本人的系统是Win7 64位版,但安装的是JDK7,Windows X86版。 假设安装目录在:C:\Program Files (x86)\Java\jdk1.7.0_21;当然也可以

colin 4万+

Axure原型模板与元件库APP交互设计素材(附资料)

在Axure中,手机模型是展示APP或小程序界面效果的重要工具。通过导入手机模型元件,设计师可以更加直观地模拟真实设备的显示效果,从而更准确地评估设计的可行性和用户体验。Axure官方及第三方资源库中提供了多种品牌和型号的手机模型,如iPhone、Android等,设计师可以根据项目需求选择合适的模型进行使用。Axure作为一款强大的原型设计工具,为APP和小程序的设计与开发提供了丰富的界面组件元件库和交互设计素材。

招风的黑耳优快云 1976

最黄的黄色笑话

  有一天,我碰到高中同学曹某,寒暄一阵以后,他说有个史上最黄的黄色笑话,问我想不想听。我说:     “这样吧,太黄的地方你就跳过。”     “好吧!”他说,接着说道:“你听着,故事是这样的,跳过,跳过,跳过……完了!”

fbysss的专栏 6万+

智能垃圾桶改造指南:树莓派+垃圾分类模型部署全记录(含数据集获取)

本文提供了一份详尽的智能垃圾桶DIY改造指南,核心是利用树莓派部署轻量化的YOLOv8垃圾分类模型。内容涵盖从数据集获取、模型训练与OpenVINO量化优化,到硬件组装、电路连接及软件集成的全流程,旨在帮助创客和爱好者以低成本实现一个能自动识别垃圾并分类的AIoT原型系统。

k6l7m8n9的博客 508

电容式触摸抗干扰设计:工业环境下的实践方案

针对工业环境中电容式touch器件易受干扰的问题,分享实用的硬件布局与软件滤波方案,提升touch响应稳定性和可靠性。

weixin_35755562的博客 843

javascript打飞机程序8x8x飞机大战js打飞机程序,飞机大战知识点包含了JavaScript面向过程的全部知识点,包括变量、运算符、判断、循环、数组、自定义函数、系统函数、事件等。...

js打飞机程序,飞机大战知识点包含了JavaScript面向过程的全部知识点,包括变量、运算符、判断、循环、数组、自定义函数、系统函数、事件等。讲解了JavaScript编程语言制作游戏界面,添加游戏控制、制作元素动画、制作多元素场景,添加碰撞功能、制作精灵动画等功能源码如下:html:<!DOCTYPE html&...

计算机毕业论文源码,学生个人网页制作html源码。贴近用户做网络推广和互联网优化。 41万+

【AI编程】Qoder AI 编程工具从部署到深度使用实战详解

Qoder AI 编程工具从部署到深度使用实战详解

congge 8333

cocos2d-x3.1 android,环境搭建,not found libcoco2dx.apk解决

xuan

andwind的专栏 1563

基于STM32F1XX 、HAL库的OPT4001-Q1环境光传感器驱动应用C语言程序设计

OPT4001-Q1 的输出是半对数 的,具有 9 个二进制对数满量程照度范围,每个范围内具有高度线性响应,使得 PicoStar™ 型号的测量能力为 312.5μlux 至 84klux,USON 型号的测量能力为 400µlux 至 107klux。// 禁用中断(示例)

PP_Cottage的博客 461

Vue - 解决 Property or method “__v_isRef“ is not defined on the instance but referenced(浏览器控制台报错,代码没错)

vue,vue2控制台报错,vue报错Propertyormethod"__v_isRef"isnotdefinedontheinstancebutreferenced,vue代码没问题,但是报错Propertyormethod"__v_isRef"isnotdefinedontheinstancebutreferenced,vue2如何解决报错,vue怎么解决报错问题,vue2Propertyormethod"__v_isRef"isnotdefi

🏆 前端领域优质创作者 4500

在Windows下如何解决Cocos2d-x中实例代码TestCpp找不到lib库文件的问题

遇到此问题首先确定缺少的库文件,然后找到库文件所在的目录。

yuxikuo_1的专栏 2769

Python 爬虫实战:爬虫与 ECharts 结合 —— 前端可视化展示

本文介绍了爬虫技术与ECharts可视化结合的完整实现流程。首先使用Python爬取京东商品数据(价格、评价数等),通过BeautifulSoup解析和pandas处理转换为JSON格式。然后构建前端页面,利用ECharts实现价格分布柱状图、价格-评价数散点图和店铺占比饼图三种可视化效果。文章详细解析了爬虫数据提取、格式转换和前端图表配置等关键技术点,并提供了完整的代码示例。最后提出了基于API接口、数据库存储等扩展方向,为数据采集到可视化展示提供了完整的解决方案。

2503_91057718的博客 630

win7下 eclipse 搭建 cocos2d-x 最佳实践 及 问题扫除

注意,本文假设您已经成功安装了JDK + Eclipse + CDT + ADT + Android SDK Step1. 下载 android-ndk-r7-windows.zip并解压 下载地址: http://dl.google.com/android/ndk/android-ndk-r7-windows.zip 下载完成后,将其解压。至于Android-sdk的下载,详见官网h

你的灯还亮着吗 349

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Cocos2d-x学习之windows 7 android环境搭建

、android平台工程创建 1、android SDK+NDK安装 1)、安装java jdk(如果已经安装了,可以不用此步骤) 进入:http://www.oracle.com/technetwork/java/javase/downloads/index.html 或者直接点击下载。如下图 选择JDK DOWNLOAD(android 开发无需JRE)

随影 289

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

cocos2d-x win32程序和NDK交叉编译

第一个cocos2d-x win32程序 打开cocos2d-x工程,(如何打开?上一篇有讲过了,点这里),选择项目解决方案右键->添加->新建项目->选择cocos2d-x win32Application, 填写项目名称确定出现如下: 有相关可选参数,box2d,support Lua(支持Lua脚本),Simple Audio Engine(支持音频播放,游戏声音播放

愤怒的小小强 1019

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

NDK编译时NDK_MODULE_PATH定义问题(cocos2d-x)

from: http://blog.sina.com.cn/s/blog_463559bc0101dhfa.html因为我尝试过多个版本NDK编译,而且几次在家中与办公室WIN7 32BITS AND 64BITS间倒腾,所以多次遇到NDK_MODULE_PATH相关问题。今天才发现佳文一篇,引用如下:cocos2d-x 2.0以上版本需要设置NDK_MODULE_PATH环境变量,因为在andr...

weixin_34033624的博客 456

cocos2d-x编译时的一些错误解决,编译出错,运行错误

自己粗心的错误真的好蛋疼,找个错误要很久时间,多则要一天,这里遇到一些粗心的故留下笔记:引以为戒 我是用的 xcode4.6.3 1、cpp文件不要用#include "MainLayer.cpp" 不然编译错误,弄死你 clang: warning: argument unused during compilation: '-websockets' duplicate symbol _

aimsgmiss的专栏 1938

python 乱码u'\xe5\x8d\x97\xe6\x96\xb9\xe8\x88\xaa\xe7\xba\xbf'

#使用这个 .encode("raw_unicode_escape") 是用encode('utf-8') 出现乱码'南方航线' https://www.v2ex.com/t/174215#r_1863663 转载于:https://www.cnblogs.com/angdh/p/10815266.h...

weixin_30849403的博客 6万+

coco2d-x打飞机项目

最近正在学习cocos2d-x打飞机这个项目,学完后一定要总结下,将成长过程记录下来,留下点时光的痕迹。

记录日常开发过程中遇到的一些问题 31万+

打飞机小游戏

射击游戏需求: 所参与的角色: 英雄机、子弹、小敌机、大敌机、小蜜蜂、天空 对象间的关系: 英雄机可以发射子弹(单倍火力(0)、双倍火力(&gt;0)) 子弹可以射击敌人(小敌机、大敌机、小蜜蜂) 打掉小敌机,玩家得1分 打掉大敌机,玩家得3分 打掉小蜜蜂,英雄机得奖励(1条命、40火力值) 发射一次双倍火力,则火力值减2 英雄机、子弹、小敌机、大敌机、小蜜蜂都在天空上飞 敌人撞到英雄...

zhyue28的博客 25万+
上一篇: Cocos2d-x 3.0 新建一个场景并设置为项目启动时自动运行的场景
下一篇: Android在真机上调试Eclipse
安济河渔夫
博客等级 码龄17年 5粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值