android代码,Android代码

怎样查看 Android APP源代码?

将apk文件拷贝至sdcard上。

创新互联公司成立与2013年,先为康县等服务建站,康县等地企业,进行企业商务咨询服务。为康县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

命令顺序如下:

进入Android sdk文件夹/tools目录下

输入adb shell

输入su

输入cd data

输入cd app

这时就可以看到你安装的所有的apk文件。输入cp 空格 对应的apk 空格 /sdcard/

这样就将apk文件拷贝出来了。

将apk文件后缀直接变成rar格式,可以看到熟悉的目录结构了,

其中xml文件打开后都是二进制的,无法查看。

这时就用到了一个android4me的AXMLPrinter2工具。(请自行百度搜索)

输入以下命令,将xml文件解析出来

java -jar AXMLPrinter2.jar showtimes_list.xml

此命令是在命令行中查看此showtimes_list.xml

将showtimes_list.xml生成xml文件,则输入以下命令:

java -jar AXMLPrinter2.jar showtimes_list.xml h.xml

目前进行到这一步,只能看到xml文件的内容,其工程中的java源文件还是看不到,看目录结构下有一个classes.dex文件,我们需要将dex文件变为jar文件。

这里用到了另一个工具dex2jar。(自行搜索下载)

在Windows下解压之后的目录如下图所示:

在命令行中,进入到此目录下:

在Windows下,输入以下命令:

dex2jar.bat c:\classes.dex

运行完之后,在C盘会多一个classes.dex.dex2jar.jar文件,此文件就是我们需要的jar文件。

利用jd-gui,将jar文件反向工程为java代码。(请自行搜索下载)

它分为Windows、Linux、和max三个版本,这里我下载的是Windows版本的。

解压之后,双击运行exe文件,选择classes.dex.dex2jar.jar文件,相应的jar文件中的Java文件就被反向工程显示出来了!

Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。 [1]  2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

Android一词最早出现于法国作家利尔亚当(Auguste Villiers de l'Isle-Adam)在1886年发表的科幻小说《未来夏娃》(L'ève future)中。他将外表像人的机器起名为Android。

Android的Logo是由Ascender公司设计的,诞生于2010年,其设计灵感源于男女厕所门上的图形符号, [1]  于是布洛克绘制了一个简单的机器人,它的躯干就像锡罐的形状,头上还有两根天线,Android小机器人便诞生了。其中的文字使用了Ascender公司专门制作的称之为“Droid ” 的字体。Android是一个全身绿色的机器人,绿色也是Android的标志。颜色采用了PMS 376C和RGB中十六进制的#A4C639来绘制,这是Android操作系统的品牌象徵。有时候,它们还会使用纯文字的Logo。

Android中如何使用代码打开各种类型的文件

在安卓中打开音乐、视频、图片、文档等文件是需要有读取SD卡权限的,如果是6.0以下的系统,则直接在清单文件中声明SD卡读取权限即可;如果是6.0或以上,则需要动态申请权限。

在7.0以下中打开文件时,通过intent调用系统安装得人软件打开文件就好了,但是在android7.0及以上的机子上这么做会报android.os.FileUriExposedException错误,

1)读取SD卡

2)动态申请权限

//设备API大于6.0时,主动申请权限(读取文件的权限)

public static  void requestPermission(Activity context) {

if (Build.VERSION.SDK_INT = Build.VERSION_CODES.M) {

    if (ContextCompat.checkSelfPermission(context, Manifest.permission.WRITE_EXTERNAL_STORAGE)

            != PackageManager.PERMISSION_GRANTED) {

        ActivityCompat.requestPermissions(context, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,

                Manifest.permission.READ_EXTERNAL_STORAGE}, 0);

    }

}

}

3)读取文件

intent = OpenFileUtil.openFile(filePath+"/"+FileName+"."+end);

使用OpenFileUtil这个。链接:

为了兼容Android7.0,获取文件Uri需要使用到FileProvider。

1)首先是AndroidManifest文件里面注册FileProvider

android:name="android.support.v4.content.FileProvider"

android:authorities="${applicationId}.provider"

android:exported="false"

android:grantUriPermissions="true"

  android:name="android.support.FILE_PROVIDER_PATHS"

    android:resource="@xml/provider_paths" / //需要自己编写xml文件

2)provider_paths.xml文件的编写

// .表示根目录

3)打开文档方式为

intent = new Intent(Intent.ACTION_VIEW);

intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

File txtFile = new File(filePath+"/"+FileName+"."+end);

Uri contentUri = FileProvider.getUriForFile(MyApplication.getContext(), BuildConfig.APPLICATION_ID+".provider", txtFile);

intent.setDataAndType(contentUri, "application/vnd.android.package-archive");

grantUriPermission(context, contentUri, intent);

startActivity(intent);

4)grantUriPermission方法添加权限

private static void grantUriPermission (Context context, Uri fileUri, Intent intent) {

List resInfoList = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);

for (ResolveInfo resolveInfo : resInfoList) {

    String packageName = resolveInfo.activityInfo.packageName;

    context.grantUriPermission(packageName, fileUri, Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);

}

}

综合两种情况:

//判断是否是AndroidN以及更高的版本,Build.VERSION_CODES.N是Android 7.0

if (Build.VERSION.SDK_INT = Build.VERSION_CODES.N) {

intent = new Intent(Intent.ACTION_VIEW);

intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

File txtFile = new File(filePath+"/"+FileName+"."+end);

Uri contentUri = FileProvider.getUriForFile(MyApplication.getContext(), BuildConfig.APPLICATION_ID+".provider", txtFile);

Log.i("文件地址:",contentUri.toString());

intent.setDataAndType(contentUri, "application/vnd.android.package-archive");

grantUriPermission(MyApplication.getContext(), contentUri, intent);

} else {

//7.0以下的可以打开文件了

intent = OpenFileUtil.openFile(filePath+"/"+FileName+"."+end);

}

MyApplication.getContext().startActivity(intent);

Android Studio 代码规范

package命名: 全部使用小写字母。一级包名为com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层级名。

类的命名:大驼峰的命名法,如:MainActivity

方法的命名:小驼峰的命名法,如:startActivity。

接口的命名: 命名规则与类一样采用大驼峰命名法,多以able或ible结尾。

变量的命名:采用小驼峰命名法。

注意:作用统一的变量,在结尾加一个量词进行区分更容易搜索和记忆,如strNameFirst和strNameLast

常量的命名:常量全部大写,如:MIN MAX

布局文件的命名:布局文件使用“前缀_逻辑名”的方式,单词全部小写:

①activity的布局——activity_xxx

②fragment的布局——fragment_xxx

③自定义控件的布局——view_xxx

④对话框的布局——dialog_xxx

⑤列表项的布局——item_xxx

资源文件的命名:资源文件使用“模块名_逻辑名”方式,单词全部小写:

①按钮以btn为前缀,如果是图片可以是btn_login.png,按钮的点击形态可以是btn_login_normal.xml以及btn_login_pressed.xml

②图片的命名以ic为前缀,例如ic_share.png

③背景图片可以用bg作为前缀。

④shape:shape_text_bg

⑤selector:selector_home

注释的规范:

其他编码规范:除了以上的规范,其他比较重要的注意点,总结如下:

①java中尽量不出现中文

②服务端可以实现的,就不要放在客户端

③引用第三方库要慎重,避免应用大容量的第三方库,导致客户端包非常大

android手机代码查询指令调集

工具/材料

安卓手机

01

我们打开手机拨号键盘输入代码,按拨号键就可使用哦!

*#*#4636#*#* 

显示手机信息、电 池信息、电 池记录、使用统计数据、WiFi 信息 

*#*#7780#*#* 

重设为原厂设定,不会删除预设程 序,及 SD 卡档案。 

*2767*3855# 

重设为原厂设定,会删除 SD 卡所有档案。 

*#*#34971539#*#* 

显示相机相机韧体版本,或更新相机韧体 

02

WLAN、 GPS 及蓝 牙测试的代码

*#*#232339#*#* 或 *#*#526#*#* 或 *#*#528#*#* – WLAN 测试

*#*#232338#*#* – 显示 WiFi MAC 地址

*#*#1472365#*#* – GPS 测试

*#*#1575#*#* – 其它 GPS 测试

*#*#232331#*#* – 蓝 牙测试

*#*#232337#*# – 显示蓝 牙装置地址

*#*#8255#*#*启动 GTalk 服务监视器

03

显示手机软 件版本的代码

*#*#4986*2650468#*#* – PDA、 Phone、 H/W、 RFCallDate

*#*#1234#*#* – PDA 及 Phone

*#*#1111#*#* – FTA SW 版本

*#*#2222#*#* – FTA HW 版本

*#*#44336#*#* – PDA 、Phone、 CSC、 Build Time、 Changelist number

04

各项硬件测试

*#*#0283#*#* – Packet Loopback

*#*#0*#*#* – LCD 测试

*#*#0673#*#* 或 *#*#0289#*#* – Melody 测试

*#*#0842#*#* – 装置测试,例如振动、亮度

*#*#2663#*#* – 触控屏 幕版本

*#*#2664#*#* – 触控屏 幕测试

*#*#0588#*#* – 接近感应器测试

*#*#3264#*#* – 内 存版本


文章名称:android代码,Android代码
文章地址:http://myzitong.com/article/hoiehi.html