Android App连接真机步骤与APP的开发语言和工程结构讲解以及运行实例(超详细必看)

简介: Android App连接真机步骤与APP的开发语言和工程结构讲解以及运行实例(超详细必看)

APP运行环境

APP是在手机上运行的一类应用软件,而应用软件依附于操作系统。

为了提供App开发的功能测试环境,一种办法是利用Android Studio创建内置的模拟器,然后启动内置模拟器,再在模拟器上运行App应用 具体步骤参考我这篇博客模拟器创建

另一种办法是使用真实手机测试App,该办法在实际开发中更为常见,由于模拟器本身跑在电脑上面,占用电脑的CPU和内存,会拖累电脑的运行速度,况且模拟器仅仅是模拟而已,无法完全验证App的所有功能,因此最终都得通过真机测试才可以

下面介绍真机调试的五个步骤

1:使用数据线把手机连到电脑上

把手机数据线的一段接到电脑的USB接口即可

2:在电脑上安装手机的驱动程序

一般电脑会把手机当作USB存储设备一样安装驱动,大多是情况会自动安装成功,如果遇到少数情况安装失败,需要先安装**手机助手,由助手软件下载对应驱动

3:打开手机的开发者选项并启用USB调试(重要!!!)

手机出厂后默认关闭开发者选项,需要开启开发者选项才能调试App,打开手机的设置菜单,进入系统-关于手机-版本信息页面 一般会有好几个版本项,每个版本项都点击几次,总会有某个版本点击后出现“你将开启开发者模式”的提示(每个手机不一样 这个大家随缘)继续点击该版本开启开发者模式,然后退出并重新进入设置页面。此时就能在系统菜单下找到开发者选项或开发人员选项了,进入开发者选项页面。启用“开发者选项”和“USB调试”两处开关,允许手机通过USB接口安装调试应用

4:将连接的手机设为文件传输模式,并允许计算机进行USB调试

手机通过USB数据线连接电脑后,下面要选中传输文件的选项,因为充电模式不支持调试App

选完之后弹出第二个窗口,要勾选始终允许使用

5:手机要能正常使用

锁屏状态下 Android Studio向手机安装App的行为可能会被拦截,所以要保证手机处于解锁状态 才能顺利通过电脑安装App到手机上

有的手机还要求插入SIM卡才能调试App,还有的手机要求登录会员等等,总之遇到问题可以多上网搜搜,在评论区留言大家一起解决

App的开发语言

1:Java

Java是Android开发的主要编程语言,创建新项目时语言一般选择Java

2:Kotlin

它时谷歌官方力推的一种编程语言,它与Java同样基于JVM且完全兼容Java语言,一旦创建新项目时语言选择Kotlin,项目就会自动加载它的插件

3:C/C++

设计图像与音视频处理等复杂运算的场合,Java等解释型语言的性能瓶颈就暴露出来了,所以借助于JNI(Java Native Interface java原生接口)技术允许Java代码调用C/C++编写的程序。

4:XML

全程为可扩展标记语言,是一种标记语言,类似于HTML

5:App连接的数据库

App上是无法连接MYSQL Oracle等企业级的数据库的,Android内置了专门的数据库名为SQLite,它遵循关系数据库的设计理念,语法类似于Mysql,但是SQLite无须单独安装,因为它已经内嵌到应用进程当中,所以App无须配置连接信息。

App的工程结构

1:app模块

(1):manifests子目录

下面只有一个XML文件 即AndroidManifest.xml它是App的运行配置文件

(2):java子目录

下面有三个包,第一个包存放当前模块的Java源代码,后面两个包存放测试用的Java代码

(3):res子目录

存放当前模块的资源文件

2:Gradle Scripts

下面主要是工程的编译配置文件

编译配置文件build.gradle

由于官方的谷歌仓库位于国外,下载速度相对较慢,因此可以在repositories节点添加阿里云的仓库地址,加快下载速度 代码如下

buildscript{
repositories{
maven{url 'https://maven.aliyun.com/repository/jcenter'}
maven{url 'https://maven.aliyun.com/repository/google'}
maven{url 'https://maven.aliyun.com/repository/gradle-plugin'}
maven{url 'https://maven.aliyun.com/repository/public'}
google()
mavenCentral()
}
dependencies{
classpath'com.android.tools.build:gradle:4.1.0'
}
}

模块级别的build.gradle对应于具体模块 下面给出注释,方便大家理解每个参数的用途

apply plugin: 'com.android.application'
android {
    // 指定编译用的SDK版本号。比如30表示使用Android 11.0编译
    compileSdkVersion 30
    // 指定编译工具的版本号。这里的头两位数字必须与compileSdkVersion保持一致,具体的版本号可在sdk安装目录的“sdk\build-tools”下找到
    buildToolsVersion "30.0.2"
    defaultConfig {
        // 指定该模块的应用编号,也就是App的包名
        applicationId "com.example.chapter02"
        // 指定App适合运行的最小SDK版本号。比如19表示至少要在Android 4.4上运行
        minSdkVersion 19
        // 指定目标设备的SDK版本号。表示App最希望在哪个版本的Android上运行
        targetSdkVersion 30
        // 指定App的应用版本号
        versionCode 1
        // 指定App的应用版本名称
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}
// 指定App编译的依赖信息
dependencies {
    // 指定引用jar包的路径
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    // 指定编译Android的高版本支持库。如AppCompatActivity必须指定编译appcompat库
    //appcompat库各版本见 https://mvnrepository.com/artifact/androidx.appcompat/appcompat
    implementation 'androidx.appcompat:appcompat:1.2.0'
    // 指定单元测试编译用的junit版本号
    testImplementation 'junit:junit:4.13'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}

运行配置文件AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
    <application
        android:allowBackup="true"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:fullBackupContent="@xml/backup_rules"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication"
        tools:targetApi="31">
        <activity android:name=".Main2Activity">
        </activity>
        <activity
            android:name=".MainActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <meta-data
                android:name="android.app.lib_name"
                android:value="" />
        </activity>
    </application>
</manifest>

部分属性说明如下

android:allowBackup 是否允许备份

android:icon 指定App在手机屏幕上显示的图标

android:label 指定App在手机屏幕上显示的名称

android:roundIcon:指定App的圆角图标

android:supportsRtl 是否支持阿拉伯语这种从右往左的语言

android:theme 指定App的显示风格

运行效果如下 "Hello World"

 

相关文章
|
5月前
|
Linux Shell 网络安全
【Azure 应用服务】如何来检查App Service上证书的完整性以及在实例中如何查找证书是否存在呢?
【Azure 应用服务】如何来检查App Service上证书的完整性以及在实例中如何查找证书是否存在呢?
|
2天前
|
测试技术 Android开发 开发者
【03】优雅草央千澈详解关于APP签名以及分发-上架完整流程-第三篇安卓APP上架华为商店后面的步骤-华为应用商店相对比较麻烦一些-华为商店安卓上架
【03】优雅草央千澈详解关于APP签名以及分发-上架完整流程-第三篇安卓APP上架华为商店后面的步骤-华为应用商店相对比较麻烦一些-华为商店安卓上架
|
9天前
|
存储 监控 API
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
|
8天前
鸿蒙语言开发 几十套鸿蒙ArkTs app毕业设计及课程作业
鸿蒙语言开发 几十套鸿蒙ArkTs app毕业设计及课程作业
18 1
|
13天前
|
前端开发 算法 安全
一站式搭建相亲交友APP丨交友系统源码丨语音视频聊天社交软件平台系统丨开发流程步骤
本文详细介绍了一站式搭建相亲交友APP的开发流程,涵盖需求分析、技术选型、系统设计、编码实现、测试、部署上线及后期维护等环节。通过市场调研明确平台定位与功能需求,选择适合的技术栈(如React、Node.js、MySQL等),设计系统架构和数据库结构,开发核心功能如用户注册、匹配算法、音视频聊天等,并进行严格的测试和优化,确保系统的稳定性和安全性。最终,通过云服务部署上线,并持续维护和迭代,提供一个功能完善、安全可靠的社交平台。
80 6
|
5月前
【Azure App Services】多次操作App Service伸缩实例遇见限制操作记录
【Azure App Services】多次操作App Service伸缩实例遇见限制操作记录
|
5月前
|
安全 Java Android开发
探索安卓开发的未来:Kotlin语言的崛起与挑战
在这篇文章中,我们将深入探讨Kotlin语言在安卓开发领域的应用及其对传统Java开发的颠覆性影响。通过分析Kotlin的特性、社区支持以及在实际项目中的应用案例,我们揭示了这一现代编程语言如何为开发者提供更简洁、更安全的编程体验,并讨论了它在面对性能优化和向后兼容性时所面临的挑战。文章旨在为读者呈现一个全面的视角,评估Kotlin作为未来安卓开发主流语言的可能性。
81 1
|
16天前
|
小程序 安全 网络安全
清晰易懂!陪玩系统源码搭建的核心功能,陪玩小程序、陪玩app的搭建步骤!
陪玩系统源码包含多种约单方式、实时语音互动、直播间与聊天室、大神申请与抢单、动态互动与社交及在线支付与评价等核心功能。搭建步骤包括环境准备、源码上传与解压、数据库配置、域名与SSL证书绑定、伪静态配置及后台管理。注意事项涵盖源码安全性、二次开发、合规性和技术支持。确保平台安全、合规并提供良好用户体验是关键。
|
3月前
|
JavaScript 前端开发 小程序
uniapp一个人开发APP关键步骤和考虑因素
uniapp一个人开发APP关键步骤和考虑因素
159 1
uniapp一个人开发APP关键步骤和考虑因素
|
3月前
|
NoSQL PHP Redis
布谷语音app源码服务器环境配置及技术开发语言
布谷语音app源码服务器环境配置及技术语言研发。。
下一篇
开通oss服务