安卓的base64在安卓解码不了,怎么回事

在那些解码网站上:http://www1.tc711.com/tool/BASE64.htm是解码出来的,但是在安卓解不出来,不知道为什么??

求熟悉的帮破一下,这个东西搞了一个多少时....搞不懂,都同样的代码,怎么就不行呢?

提示错误:是不是在java有什么特殊情况解码呢?这乱码在网站都是可以解出来

java.lang.IllegalArgumentException: bad base-64

 package china.testfour;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Base64;
import android.util.Log;

public class MainActivity extends AppCompatActivity {

    String context = "WzAwOjAxLjQ2XeS9nOivjTrpu4TlrrbpqbkNClswMDowMi41MV3kvZzmm7I66buE5a626am5DQpbMDA6MzYuODVd5LuN5piv6Zuo5aScDQpbMDA6MzguODZd5Yed5pyb56qX5aSW5rKJ6buY55qE5aSp6ZmFDQpbMDA6NDMuMjZd6Zeu6IuN5aSp5Y+v5Lya55+l5b+D6YeM55qE5oSf6KeJDQpbMDA6NTIuOTZd6ZqP552A5bKB5pyIDQpbMDA6NTQuNjdd5peg5bC954ix5b+16JeP5Zyo5LqO5b+D6YeMDQpbMDA6NTkuMDNd6LGh5Yaw5bCB55qE55y85YWJ5aSx5Y675LqG5pa55ZCRDQpbMDE6MDguNDRd6K6p6Zuo54K56L276L2755qE5rSS6L+HDQpbMDE6MTEuOTdd5by65oqK5b+n6YOB5YaN5o6p55uWDQpbMDE6MTUuMzFd5YOP56KO5pif6Zeq6Zeq5LqO5aSp56m65Y+r5ZSk5L2gDQpbMDE6MjYuNzBd6YGl5pyb55u85pybDQpbMDE6MjguMjBd6IO95YOP5riF6aOO6Zmq5Ly05aW56aOY5Y67DQpbMDE6MzIuNjNd6K6p5a2k5Y2V55qE6IeC5byv5LiA5YaN5oqx57Sn5L2gDQpbMDE6NDIuNDNd5Zue5pyb5b6A5pel5aaC6Zu+5Ly85qKmDQpbMDE6NDUuODhd5peg5aWI55qE6L275Y+55piv5aW555qE5qyi56yR5aOwDQpbMDE6NTIuNzhd6aOO5Ly86L275ZC56L+HDQpbMDE6NTcuOTFd6K6p6Zuo54K56L276L2755qE5rSS6L+HDQpbMDI6MDEuMjdd5by65oqK5b+n6YOB5YaN5o6p55uWDQpbMDI6MDYuNzJd5YOP56KO5pif6Zeq6Zeq5LqO5aSp56m65Y+r5ZSk5L2gDQpbMDI6MTMuOTZd5q+P5aSp5aSa5LmI5aSa5LmI55qE6ZyA6KaBDQpbMDI6MTcuNjZd5rC46L+c5LiO5L2g5oqx5oul552ADQpbMDI6MjEuMjVd5b+Y5o6J5LiW6Ze05LiA5YiH55eb6Ium5oKy5ZOADQpbMDI6MjcuNzhd57q15L2/5YiG5byA5YiG5byA5aSa5LmI6L+cDQpbMDI6MzEuNzBd5Lmf5Lya5ZCs5Yiw5L2g5ZG85ZSkDQpbMDI6MzUuMjhd5pyf5b6F5oiR6L+Z5LiA55Sf5YaN5Lya5L2gDQpbMDM6MjcuNzld5q+P5aSp5aSa5LmI5aSa5LmI55qE6ZyA6KaBDQpbMDM6MzEuNzRd5rC46L+c5LiO5L2g5oqx5oul552ADQpbMDM6MzUuNDNd5b+Y5o6J5LiW6Ze05LiA5YiH55eb6Ium5oKy5ZOADQpbMDM6NDEuOTJd57q15L2/5YiG5byA5YiG5byA5aSa5LmI6L+cDQpbMDM6NDUuOTRd5Lmf5Lya5ZCs5Yiw5L2g5ZG85ZSkDQpbMDM6NDkuNDBd5pyf5b6F5oiR6L+Z5LiA55Sf5YaN5Lya5L2gDQpbMDM6NTYuMThd5q+P5aSp5aSa5LmI5aSa5LmI55qE6ZyA6KaBDQpbMDM6NTkuOTNd5rC46L+c5LiO5L2g5oqx5oul552ADQpbMDQ6MDMuNDZd5b+Y5o6J5LiW6Ze05LiA5YiH55eb6Ium5oKy5ZOADQpbMDQ6MTAuMjFd57q15L2/5YiG5byA5YiG5byA5aSa5LmI6L+cDQpbMDQ6MTQuMDZd5Lmf5Lya5ZCs5Yiw5L2g5ZG85ZSkDQpbMDQ6MTcuNjJd5pyf5b6F5oiR6L+Z5LiA55Sf5YaN5Lya5L2gDQpbMDQ6MjguMjFd5LuN5piv6Zuo5aScDQpbMDQ6MjkuOTZd5Yed5pyb56qX5aSW5rKJ6buY55qE5aSp6ZmFDQpbMDQ6MzQuMzNd6Zeu6IuN5aSp5Y+v5Lya55+l5b+D6YeM55qE5oSf6KeJDQpbMDQ6NDcuODJd6ZqP552A5bKB5pyIDQpbMDQ6NDkuMzdd5peg5bC954ix5b+16JeP5Zyo5LqO5b+D6YeMDQpbMDQ6NTMuNjNd6LGh5Yaw5bCB55qE55y85YWJ5aSx5Y675LqG5pa55ZCRDQo=";


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String result = new String(Base64.decode(context,Base64.DEFAULT));



        Log.d("ddd", result);
    }
}

0

1个回答

import com.sun.org.apache.xml.internal.security.exceptions.Base64DecodingException;
import com.sun.org.apache.xml.internal.security.utils.Base64;

 public static void main(String[] args) {
        String context = "WzAwOjAxLjQ2XeS9nOivjTrpu4TlrrbpqbkNClswMDowMi41MV3kvZzmm7I66buE5a626am5DQpbMDA6MzYuODVd5LuN5piv6Zuo5aScDQpbMDA6MzguODZd5Yed5pyb56qX5aSW5rKJ6buY55qE5aSp6ZmFDQpbMDA6NDMuMjZd6Zeu6IuN5aSp5Y+v5Lya55+l5b+D6YeM55qE5oSf6KeJDQpbMDA6NTIuOTZd6ZqP552A5bKB5pyIDQpbMDA6NTQuNjdd5peg5bC954ix5b+16JeP5Zyo5LqO5b+D6YeMDQpbMDA6NTkuMDNd6LGh5Yaw5bCB55qE55y85YWJ5aSx5Y675LqG5pa55ZCRDQpbMDE6MDguNDRd6K6p6Zuo54K56L276L2755qE5rSS6L+HDQpbMDE6MTEuOTdd5by65oqK5b+n6YOB5YaN5o6p55uWDQpbMDE6MTUuMzFd5YOP56KO5pif6Zeq6Zeq5LqO5aSp56m65Y+r5ZSk5L2gDQpbMDE6MjYuNzBd6YGl5pyb55u85pybDQpbMDE6MjguMjBd6IO95YOP5riF6aOO6Zmq5Ly05aW56aOY5Y67DQpbMDE6MzIuNjNd6K6p5a2k5Y2V55qE6IeC5byv5LiA5YaN5oqx57Sn5L2gDQpbMDE6NDIuNDNd5Zue5pyb5b6A5pel5aaC6Zu+5Ly85qKmDQpbMDE6NDUuODhd5peg5aWI55qE6L275Y+55piv5aW555qE5qyi56yR5aOwDQpbMDE6NTIuNzhd6aOO5Ly86L275ZC56L+HDQpbMDE6NTcuOTFd6K6p6Zuo54K56L276L2755qE5rSS6L+HDQpbMDI6MDEuMjdd5by65oqK5b+n6YOB5YaN5o6p55uWDQpbMDI6MDYuNzJd5YOP56KO5pif6Zeq6Zeq5LqO5aSp56m65Y+r5ZSk5L2gDQpbMDI6MTMuOTZd5q+P5aSp5aSa5LmI5aSa5LmI55qE6ZyA6KaBDQpbMDI6MTcuNjZd5rC46L+c5LiO5L2g5oqx5oul552ADQpbMDI6MjEuMjVd5b+Y5o6J5LiW6Ze05LiA5YiH55eb6Ium5oKy5ZOADQpbMDI6MjcuNzhd57q15L2/5YiG5byA5YiG5byA5aSa5LmI6L+cDQpbMDI6MzEuNzBd5Lmf5Lya5ZCs5Yiw5L2g5ZG85ZSkDQpbMDI6MzUuMjhd5pyf5b6F5oiR6L+Z5LiA55Sf5YaN5Lya5L2gDQpbMDM6MjcuNzld5q+P5aSp5aSa5LmI5aSa5LmI55qE6ZyA6KaBDQpbMDM6MzEuNzRd5rC46L+c5LiO5L2g5oqx5oul552ADQpbMDM6MzUuNDNd5b+Y5o6J5LiW6Ze05LiA5YiH55eb6Ium5oKy5ZOADQpbMDM6NDEuOTJd57q15L2/5YiG5byA5YiG5byA5aSa5LmI6L+cDQpbMDM6NDUuOTRd5Lmf5Lya5ZCs5Yiw5L2g5ZG85ZSkDQpbMDM6NDkuNDBd5pyf5b6F5oiR6L+Z5LiA55Sf5YaN5Lya5L2gDQpbMDM6NTYuMThd5q+P5aSp5aSa5LmI5aSa5LmI55qE6ZyA6KaBDQpbMDM6NTkuOTNd5rC46L+c5LiO5L2g5oqx5oul552ADQpbMDQ6MDMuNDZd5b+Y5o6J5LiW6Ze05LiA5YiH55eb6Ium5oKy5ZOADQpbMDQ6MTAuMjFd57q15L2/5YiG5byA5YiG5byA5aSa5LmI6L+cDQpbMDQ6MTQuMDZd5Lmf5Lya5ZCs5Yiw5L2g5ZG85ZSkDQpbMDQ6MTcuNjJd5pyf5b6F5oiR6L+Z5LiA55Sf5YaN5Lya5L2gDQpbMDQ6MjguMjFd5LuN5piv6Zuo5aScDQpbMDQ6MjkuOTZd5Yed5pyb56qX5aSW5rKJ6buY55qE5aSp6ZmFDQpbMDQ6MzQuMzNd6Zeu6IuN5aSp5Y+v5Lya55+l5b+D6YeM55qE5oSf6KeJDQpbMDQ6NDcuODJd6ZqP552A5bKB5pyIDQpbMDQ6NDkuMzdd5peg5bC954ix5b+16JeP5Zyo5LqO5b+D6YeMDQpbMDQ6NTMuNjNd6LGh5Yaw5bCB55qE55y85YWJ5aSx5Y675LqG5pa55ZCRDQo=";
         String result;
        try {
            result = new String(Base64.decode(context));
             System.out.println(result);
        } catch (Base64DecodingException e) {
            e.printStackTrace();
        }
    }

没问题吖。

图片说明

0
limjiregister
limjiregister 回复无法显示此用户: 哎,能来代码能用,就是log打不出来,奇怪了,显示在textview上竟然可以显示.....
3 年多之前 回复
rui888
无法显示此用户 回复limjiregister: 我直接main方法测试的。你再试试。
3 年多之前 回复
limjiregister
limjiregister 啊,我在Android studio没log出来,哎,不知道怎么回事,看来不是代码的问题了?
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Base64解码Base64解码
Base64解码Base64解码Base64解码Base64解码Base64解码
armv7a 安卓解码块
安装播放软件的时候遇到不能播放,可以试试安装这个解码库看看。
安卓用ffmeg解码
本文章是用ffmeg解码封装格式(如mp4)转换为yuv420p保存到本地,本文是结合雷霄骅博客ppt和某地方学习的一个笔记(说出来等下被认为做广告就尴尬了) 封装格式视频编码数据将封装格式解压后可以得到压缩过的音视频等. 将压缩过的视频解压后可以得到 视频像素数据(RGB,YUV等).常见的视频压缩格式有H.264, MPEG4等… YUV420P格式介绍YUV是视频像素格式,在压缩视频格式解
安卓aac解码播放
安卓aac解码播放
安卓二维码扫描解码
基于zxing3.1 jar包开发的二维码扫描解码,仿微信扫描框,被扫描二维码在手机上图像显示不变形;识别速度很快,有打开闪光灯功能,Activity分主页面,扫描页面,显示页面,更方便移植。
安卓解码工具ext4_unpacker
ext4_unpacker,很强大的安卓解码工具,可以把隐藏的apk都可以读取并提取出来,非常强大
破解不了的安卓程序
反编了也不行,有没有高手帮帮我,实在搞不定,而且我不懂怎么让软件和灯光评判放在一起。
安卓sdk安装不了?
安装sdk时到Done loading packages.这步就不动了。hosts 也配置了可是到这里一直不动,求大神给点提示?[img=https://img-bbs.csdn.net/upload/201603/31/1459390607_174335.png][/img][img=https://img-bbs.csdn.net/upload/201603/31/1459390792_9972.png][/img]
安卓Base64批量上传至服务器
图片上传 base64
安卓 图片转base64问题
图片转base64码过程中一直有问题,不管是用安卓的util包下的base64还是sun,misc.Base64Encoder转都有问题
安卓 URL编码 和解码注意事项
例如URL: http://baidu.com/html?key=美泰&sort=0&districtId=1&page=0&size=40&sceneId=1&siteId=1&sourceId=1&userId=0 1.解码解到原始值解码多少次都一个样,不会再发生变化 2.美泰 编码一次得到A,再编码一次B,再编码一次D,次次都不一样的哦 解码一次得到B,再解码一次得到
MediaCodec-Decode-selectFile-master.zip 安卓Android 解码播放
安卓Android 解码播放,基于mediaCodec 实现安卓的解码,支持选择文件并直接调用MediaCodec 的播放。
Android 安卓 H.264软件解码
Android 安卓 H.264软件解码,内部使用JNI调用C库实现
安卓视频播放及解码技术分享
一、背景知识 android各版本的多媒体框架介绍 软硬解码概念 二、android Mediaplayer架构介绍 结合代码 三、扩展android视频解码格式 Android源码播放器 第三方库
安卓学习笔记 6-12 FFmpeg解码
今天我学习了FFmpeg解码 首先,我们来看一下解码流程 我们先注册组件,然后打开视频文件 视频播放需要通过解码器进行,我们来获得解码器
Base64解码
项目的log里有很多上传文件后的base64编码的字符串,想把它解码为原来的文件。 [code="python"] import base64 with open('c:/excelText.txt','r') as f1: s = f1.read() b = base64.decodebytes(bytes(s,encoding='UTF-8')) wit...
base64解码
rn“我的祖国”----base64---> ztK1xNfmufo=rnrn“おはよう”----base64---> pKqkz6TopKY=rnrnrn以上的base64存放在string中,如何解码才能让中文和日文在string中正常显示、输出到winform中呢?rnrnrn
Base64的解码?
为什么在Delphi6里提供Base64Encode函数而没有相关的解码函数。还是我没有找到,忘指教。
base64 解码
/wEPDwULLTExNDgzODY2MzkPZBYCAgMPZBYEAgMPZBYUZg9kFgICBQ8WAh4HVmlzaWJsZWdkAgEPFgIfAGhkAgIPFgIfAGcWBgIBDxYCHwBnZAIDDxYCHwBnZAIFDxYCHwBnZAIDDxYCHwBnFgYCAQ8WAh8AZ2QCAw8WAh8AZ2QCBQ8WAh8AZ2QCBA8WAh8AZ2QCBQ8WAh8AZxYEAgEPFgIfAGdkAgMPFgIfAGdkAgYPFgIfAGcWBAIBDxYCHwBnZAIDDxYCHwBnZAIHDxYCHwBnFggCAQ8WAh8AZ2QCAw8WAh8AZ2QCBQ8WAh8AZ2QCBw8WAh8AZ2QCCA8WAh8AZxYEAgEPFgIfAGdkAgMPFgIfAGdkAgkPFgIfAGcWCgIBDxYCHwBnZAIDDxYCHwBnZAIFDxYCHwBnZAIHDxYCHwBnZAIJDxYCHwBnZAIRDxYCHgtfIUl0ZW1Db3VudGZkZMeEYAYWTq5WZERLpVErIC9+bEwxiSsyS7UtDEBzwOTZrn请问这个是 base64位的,怎么解码,我有解了一些 但是中文全部是乱码?rn这是 asp.net 的 __VIEWSTATE 中的数据
AsyncTask安卓下载图片下载不了?
用了安卓的AsyncTask,但是怎么通知主程序读取图片?为什么图片加载不了了呢?
显示不了安卓虚拟机的画面
[img=https://img-bbs.csdn.net/upload/201411/26/1416985580_560066.jpg][/img]rnrn自学安卓视频时,发现显示不了安卓虚拟机的画面rn出现错误提示见附件图片,rn谢谢。rn如何解决。
安卓 访问不了/storage目录
安卓 访问不了/storage目录,new File("/").listFiles()访问根目录可以,点击storage闪退,而且new File("/storage").listFiles()也闪退,访问这个目录需要root权限吗,该怎么办?
我的安卓xml写代码补不了码怎么回事?
打个a补不出andrio出来[img=https://img-bbs.csdn.net/upload/201907/18/1563433388_762491.png][/img]
安卓中图片和Base64编码字符集的相互转换
前言:有几天没写博客了,最近赶项目,还有好哥们的婚礼加在一起,实在是忙坏了。说起好哥们结婚,就想多说几句。想必大家和我一样,在学校时有那么几个臭味相投的哥们,不多也不算少,一起上课,吃饭,去图书馆(其实次数很少),打球,玩游戏,通宵,谈人生理想(其实就是瞎扯淡)等等,天天腻在一起,没心没肺,打打闹闹,直到毕业还觉得时间太少。所以就有这么一个约定:“”我结婚的时候你一定要来哦,这样我比较有安全感。。
安卓 Base64加密 解密如何使用
[code=java]@Overridern protected void onCreate(Bundle savedInstanceState) rn super.onCreate(savedInstanceState);rn setContentView(R.layout.activity_main);rn GetloadInfo info=new GetloadInfo(this);rn rn info.add("1", "b", "55adad", "12345W78d1234a6aA");rn InfoDomel sDomel=info.find();rn if(sDomel!=null)rn Toast.makeText(this,sDomel.getIsload()+" "+sDomel.getIssvae()+" "+sDomel.getStucode()+" "+sDomel.getStupwd(), 0).show();rn rn Log.i("t460470591",sDomel.getIsload()+" "+sDomel.getIssvae()+" "+sDomel.getStucode()+" "+sDomel.getStupwd());rn rn[/code]rn主程序rnrn[code=java]public class GetloadInfo rn rn private Context context;rn private DBhelp dBhelp;rn public GetloadInfo(Context context)rn rn this.context=context;rn dBhelp=new DBhelp(context);rn rn rn rn public void add(String isload,String isSave,String stuCode,String stuPwd)rn rn byte[] bytes=Base64.decode(stuPwd,Base64.NO_WRAP);//转成2进制rn //byte[] bytes=Base64.decode(stuPwd,0);//转成2进制rn SQLiteDatabase db=dBhelp.getWritableDatabase();rn db.execSQL("delete from McsCP_loadInfo where 1=1");rn db.execSQL("insert into McsCP_loadInfo(isLoad,isSave,stucode,stupwd) values(?,?,?,?)",new Object[]isload,isSave,stuCode,bytes);rn db.close();rn rn rn public InfoDomel find()rn rn InfoDomel demol=new InfoDomel();rn SQLiteDatabase db=dBhelp.getReadableDatabase();rn Cursor cursor=db.rawQuery("Select isLoad,isSave,stucode,stupwd from McsCP_loadInfo",null);rn if(cursor.getCount()>0)rn rn while(cursor.moveToNext())rn rn demol.isload=cursor.getString(0);rn demol.issvae=cursor.getString(1);rn demol.stucode=cursor.getString(2);rn byte[] tempPwd=cursor.getBlob(3);rn demol.stupwd=Base64.encodeToString(tempPwd, Base64.NO_PADDING);//2进制转回Stringrn rn rn cursor.close();rn db.close();rn return demol;rn rn elsern cursor.close();rn db.close();rn return null;rn rn rn [/code]rnrn我发现 那个BASE64只能转String的长度为16以下的,像我上面那个String 17位了,进去立马在public void add()第一句话报错,rn[img=https://img-bbs.csdn.net/upload/201408/03/1407049636_891057.jpg][/img]
安卓入门之安卓系统架构
一、安卓系统架构中英文图版: 系统分为三个层次: 第一层:linux底层,主要是软件与硬件之间的联系,即驱动 第二层:中间件:库和运行环境,用C或C++实现的,例如c库、2d图形界面、多媒体框架、secure socket layer等;运行环境是Dalvik虚拟机 第三层:应用程序框架:为开发者提供多种API 二、开发者所做之事 1.利用java语言开发软件,apk类...
安卓
禁止使用本服务进行任何违法恶意活动;防走丢:请加店主QQ:344654446。微信:344654446 安卓客户端 [ →→→点 此 下载,下载链接1←←← ](https://share.weiyun.com/50zTmtA) 一:打开刚才安卓的app: 二:填入购买的【地址】、【端口】、【密码】,加密方式选AES-256-CFB 请仔 细阅读此图!只需动①②③④⑤⑥⑦部分,填写完毕点...
安卓!!!!!!!!!
这个怎么解决啊?求大神指导![图片](https://img-ask.csdn.net/upload/201612/06/1481022798_978912.jpg)
安卓与“Proguard”——安卓的代码混淆
谨以此文,记我在公司实习时,所接到的第一个正式的、有意义的任务——将公司即将发布的APK进行代码混淆。 什么是代码混淆 混淆就是对发布出去的程序进行重新组织和处理,使得处理后的代码与处理前代码完成相同的功能,而混淆后的代码很难被反编译,即使反编译成功也很难得出程序的真正语义。被混淆过的程序代码,仍然遵照原来的档案格式和指令集,执行结果也与混淆前一样,只是混淆器将代码中的所有变量、
【安卓笔记】安卓项目结构
目录结构如下: 常用包和文件说明: src包:保存的是应用程序的源代码; gen包:包含由ADT生成的Java文件; android.jar文件:包含了Android项目需要使用的工具类、接口等; assets包:用于保存原始资源文件,其中的文件会被编译到.apk中,并且原文件名会被保留; res包:用来保存资源文件,当该包中文件发生变化时,R文件会自动修改; drawables...
安卓——安卓布局优化+include+merge+viewStub
FrameLayout:例如视频暂停时,会在视频上层显示一个布局的图标。这个图标可能就是用FrameLayout做的一个布局叠加的一个效果长时间的任务加载时,中央会有一个圆形滚动条在滚动。这个滚动条也有可能是用FrameLayout写的叠加效果直接用include加载写好的布局,写法参看activity_main.xml然后在Maincitivity.java中也可以直接findViewById找...
安卓注释模板---(安卓学习笔记)
今天重新安装studio的时候竟然发现不会写注释模板了这里记录一下 下面是注释模板标准/** * * @function fieldfield * @author 你的名字 * @time datedate timetime * **/步骤: 1,新建一个模板取名cc ,2, 3.选择对应的函数
初学安卓-安卓广播
直接上代码,没什么可讲的地方 MyBroadcastReceiverOne package mybroadcastreceiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.L
安卓换肤,安卓夜间模式
chameleon 项目地址:zhaoxuyang/chameleon  简介:Android Change Skin, Android Night Mode, 安卓换肤,安卓夜间模式 更多:作者   提 Bug    标签:   Android Change Skin, Android Night Mode, 安卓换肤,安卓夜间模式 方便的话给个 star! ️✨ ...
安卓手机应用安卓市场
手机应用 自带软件 导出程序 与大家分享
cal 安卓计算器 安卓
计算器,适合初学者,不过好像加减乘除只能是英文状态下的符号哦!注意咯
安卓SDK24.4,安卓8.1
安卓开发SDK,最高支持安卓9.0,并且包含一系列的SDK build-tools,Android API