Android 开发基础记录

记录

1、layout 中的wrap_contentmatch_parent区别?

  • wrap_content:”包裹“内容,即控件大小跟随内容
  • match_parent:“适应”父容器,即填充满<>/font父容器的其他内容

2、layout中的framelayoutlinearlayout的区别?
ConstraintLayoutRelativeLayout呢?

3、如何添加背景图?

4、如何(使用Android studio)打包(导出未签名的apk)

右上角Gradle——双击assemble,即可
在这里插入图片描述
生成在:
在这里插入图片描述
可以发现有两个apk:
一个是默认的带debug的签名,
一个是unsigned apk

5、如何获取系统签名

问题:

在这里插入图片描述

方法一:使用signapk.jar工具
(该方法需要java8)

大致两个过程:

  • 获取Android系统签名文件:秘钥文件platform.x509.pemplatform.pk8签名工具signapk.jar

在这里插入图片描述

  • 生成数字证书:keytool -genkey -keystore my.keystore -keyalg RSA -validity 20000

  • 放于同一个文件夹下并执行java -jar signapk.jar platform.x509.pem platform.pk8 未签名的apk文件名 签名后的apk文件名
    在这里插入图片描述
    在这里插入图片描述

  • 放于同一个文件夹下并执行:

即可获得系统签名后的的apk,接下来就是其安装到安卓设备:通过adb push或者adb install

方法二:使用工具keytool-importkeypair

获取下面三个文件之后,在linux中执行代码
在这里插入图片描述
主要分为两大步:

  • 生成jsk文件,以下在Linux中执行:
sed -i 's/\r$//' keytool-importkeypair
./keytool-importkeypair -k system_key.jks -p hik12345 -pk8 platform.pk8 -cert platform.x509.pem -alias system_key

6、如何导入其它工程的库或者调用其它项目的接口?

  • app中的dependencies修改:
    在这里插入图片描述
    代码如下:
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation project(path: ':archi')
    implementation project(path: ':proto')
  • settings.gradle的修改:
    添加include ':xxx'

  • build.gradle的修改:

以下为不修改build.gradle而可能导致的问题:

1、解决报错> Plugin with id 'kotlin-android' not found.

在这里插入图片描述

    ext {
        kotlin_version = '1.4.10'
    }
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

2、解决报错DSL element 'android.dataBinding.enabled' is obsolete and has been replaced with 'android.buildFeatures.dataBinding'. It will be removed in version 5.0 of the Android Gradle plugin.

将以下代码:

    dataBinding {
        enabled true
    }

改为:

    buildFeatures{
        dataBinding = true
        // for view binding :
        // viewBinding = true
    }

3、解决报错:Failed to resolve: :ipc-22: Affected Modules: xxxx
也就是说,项目的 aar 文件(lib 文件下)导入出错

需要在两个地方加入如下代码:

buildscript {
    ext {
        kotlin_version = '1.4.10'
    }
    repositories {
        google()
        jcenter()
        // 导入 aar 文件所在文件夹
        flatDir {
            dirs '../libs'
        }
        
    }
allprojects {
    repositories {
        google()
        jcenter()
        // 导入 aar 文件所在文件夹
        flatDir {
            dirs '../libs'
        }
        
    }

资源

主要参考:
“Android 开发者基础知识”课程由 Google Developers 培训团队设计。您必须具备 Java 编程语言方面的经验,才能学习这门课程。

Android 开发者基础知识

主要包括以下资源:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值