☰
Android开发笔记
2026/10/6 2:13:32 网站建设 项目流程

Android应用项目文件夹必须项(如何判定一个文件夹是安卓项目)

settings.gradle里指定了包含的模块:

几个模块文件夹,里面有src/main/AndroidManifest.xml

模块分为应用模块和库模块,类型在它的build.gradle里看:

怎么找到主程序:AndroidManifest里有这一段的

它的activity的name指定了主程序的java或kotlin脚本的路径和名字。com、unity3d是一层层文件夹。

Android应用签名相关

关键词:包体、签名、摘要、私钥、公钥、公钥哈希指纹。

只有包名+签名都相同才被认为是同一个app。签名是应用ID的一部分,可以用来区分同名app。

签名是包体摘要+私钥计算出来的,需要二者都相同才能计算出相同的签名。

安装应用时通过签名+公钥>摘要,和对包体计算的摘要对比,一致则通过。

核心公式:

Hash(包体)>摘要 摘要+私钥>签名 签名+公钥>摘要

打包时计算1、2.安装时计算1、3.

公钥哈希指纹是公钥哈希运算得到的短字符串。用于平台识别。

Hash(公钥)>公钥指纹

总结:同一个app,更新了:私钥、公钥不变,摘要、签名变。要安装验证,需要检查签名反算出的摘要和用包体算出的摘要一致。非开发者没有私钥,也就无法从摘要算出签名,无法构造合法签名。

关键词

module java xml gradle AndroidManifest.xml acticity onCreate

概述

一个页面是一个activity。AndroidManifest.xml里记录了所有活动的java类名,创建时的生命周期函数里

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity3); }

指明了这个类管的页面布局的xml。这样总配置xml、java类、xml布局三者联系了起来。

一个页面布局用一个xml表示。

java通过id找到控件;

values是记录各种常量的文件。

混淆

把有意义的字段名、函数名变成无意义名称,增加解包人阅读源代码的难度。

.gradle

里面是Groovy代码。

Android SDK和第三方SDK

开发软件需要的SDK是Android SDK或者系统SDK,在SDK Manager管理版本。SDK接入指的是第三方SDK,支付宝、微信等。

指定Android SDK

指定下载好的Sdk文件夹

AndroidStudio打包中的问题

下载Gradle失败

重试,下载了40分钟,完成。

解密失败

Gradle版本过低

gradle-wrapper改成

distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-all.zip

重新build,下载一个小时,然后

下载的Gradle压缩文件可能被损坏

下载太慢了,去Settings里改成使用本地Gradle,构建,还是显示下载Gradle.zip,而且关闭项目没反应,卡死了,杀进程。重开,构建,可以了。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询