IDEA Android新建项目基础


title: IDEA Android基础开发
search: 2024-03-16
tags:

  • “#JavaAndroid开发”

一、构建基本项目

在使用 IDEA 进行基础的Android 开发时,我们可以通过IDEA自带的新建项目功能进行Android应用开发基础架构的搭建,可以直接找到 File --> New --> Project... 进入新建项目选项

IDEA新建项目-1

找到 Android , 如果没有基础模板的,可以等待,让IDEA 自动让其安装一个 Android 开发环境即可,在Android 项目新建之初,有四大模板,分别是 Phone and Tablet ,Wear OS ,Television,Automotive 分别是对应开发 手机和平板电脑,穿戴设备,电视设备,车载设备这四大模板。

在此,我们选择 Phone and Tablet ,可以看到,有多个项目模板等待我们选择

详细信息请看 [[Android Activity 知识补充 (待完善)]]

[!知识点扩展] 浅谈Activity

  1. 一个 Activity 我们在 Android 中默认是一个单独的窗口
  2. Activity 之间通过 Intent 进行通信,跳转。
  3. 所有的 Activity 都必须在 AndroidManifest.xml 这个配置文件中声明,才能被识别和执行
  4. Intent 可以决定项目启动时第一个进入的 Activity 是哪一个

IDEA新建项目-2

(一) No Activity

即一个 Activity 也没有,不在 AndroidManifest.xml 中注册 Activity ,我们选择后可以看到,如图的配置,其中比较重要的是 Save location, Language, Minimum SDK, Build configuration language 这四大配置。
1. Save location 是决定你项目放在计算机哪个地方的,你可以在对应路径找到它
2. Language 选项,有且只有两个选择,Java 和 Kotlin,现代企业开发主流是 Kotlin ,但是 Kotlin 和 Java 是同源的,如果你是一个 Android 开发高手,建议直接使用 Kotlin ,如果基础不够,建议从 Java 开发进行基础打牢固。
3. Minimum SDK ,在这里你可以选择你的 Android 最低适配版本,我们知道 Android 每年推出一个大的版本 SDK 越新的版本并不一定支持以前的老版本,选择合适的版本支持是软件基础开发必须要考虑的事情
4. Build configuration language 是选择构建项目的配置语言,你一般可以选择是 Kotlin 或 Groovy 不过建议选择的是 IDEA 默认的 Kotlin DSL (build.gradle.kts)

IDEA新建项目-3

(二)Empty Activity

即有一个 Activity ,在 AndroidManifest.xml 中注册了一个主要的 Activity ,虽然这个Activity 里面什么也没有,其余的可以参照 No Activity,值得注意的一点是 Empty Activity 默认使用 Kotlin 进行搭建,且不可以选择 Language 所以基础开发人员不建议用这个模板

(三) 剩余所有的模板

如 Basic Views Activity,Button Navigation Views Activity ,Empty Views Activity,Navigation Drawer Views Activity,Responsive Views Activity,Game Activity(C++) 等等,都是大同小异,均可参照 No Activity

在这里,我们选择 使用 Empty Views Activity 选择 Java 进行 Android 开发。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.tpcf.cn/news/768473.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue的history路由实现形式

vue的路由实现形式 SPA single page web application,单页Web应用 简单的说SPA就是一个WEB项目只有一个HTML页面,一旦页面加载完成,SPA不会因为用户的操作而进行页面的重新加载和跳转。取而代之的是利用JS动态的改变HTML的内容&#xff0c…

代码随想录算法训练营day19 | 二叉树阶段性总结

各个部分题目的代码题解都在我往日的二叉树的博客中。 (day14到day22) 目录 二叉树理论基础二叉树的遍历方式深度优先遍历广度优先遍历 求二叉树的属性二叉树的修改与制造求二叉搜索树的属性二叉树公共最先问题二叉搜索树的修改与构造总结 二叉树理论基础 二叉树的理论基础参…

基于nodejs+vue学生作业管理系统python-flask-django-php

他们不仅希望页面简单大方,还希望操作方便,可以快速锁定他们需要的线上管理方式。基于这种情况,我们需要这样一个界面简单大方、功能齐全的系统来解决用户问题,满足用户需求。 课题主要分为三大模块:即管理员模块和学生…

平台介绍-搭建赛事运营平台(1)

平台的一个很重要的市场方向是为企业搭建各类运营平台。运营平台是这类企业的核心系统,例如对银行而言就是柜台系统,对于电商而言就是电子商城。运营平台和内部信息平台的显著区别是要面向外部C端客户。内部信息平台的受众只是企业内部人员。 最近签约开…

HAL STM32G4 +ADC手动触发采集+各种滤波算法实现

HAL STM32G4 ADC手动触发采集各种滤波算法实现 📍相关篇《HAL STM32G4 TIM1 3路PWM互补输出VOFA波形演示》 ✨本篇内容也是继欧拉电子相关无刷电机驱动控制学习的相关基础内容。仅作为个人笔记记录使用。 📍感谢网友提供的相关内容《基于STM32的ADC采样及…

上位机图像处理和嵌入式模块部署(qmacvisual轮廓查找)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们说过,图像的处理流程一般都是这样的,即灰度化-》降噪-》边缘检测-》二值化-》开闭运算-》轮廓检测。虽然前面的几个…

LeetCode 面试经典150题 14.最长公共前缀

题目: 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 思路: 代码: class Solution {public String longestCommonPrefix(String[] strs) {if (strs.length 0) {return &…

知攻善防应急靶场-Linux(2)

前言: 堕落了三个月,现在因为被找实习而困扰,着实自己能力不足,从今天开始 每天沉淀一点点 ,准备秋招 加油 注意: 本文章参考qax的网络安全应急响应和知攻善防实验室靶场,记录自己的学习过程&am…

python绘图matplotlib——使用记录1

本博文来自于网络收集,如有侵权请联系删除 使用matplotlib绘图 1 常用函数汇总1.1 plot1.2 legend1.3 scatter1.4 xlim1.5 xlabel1.6 grid1.7 axhline1.7 axvspan1.8 annotate1.9 text1.10 title 2 常见图形绘制2.1 bar——柱状图2.2 barh——条形图2.3 hist——直…

flutter3_douyin:基于flutter3+dart3短视频直播实例|Flutter3.x仿抖音

flutter3-dylive 跨平台仿抖音短视频直播app实战项目。 全新原创基于flutter3.19.2dart3.3.0getx等技术开发仿抖音app实战项目。实现了类似抖音整屏丝滑式上下滑动视频、左右滑动切换页面模块,直播间进场/礼物动效,聊天等模块。 运用技术 编辑器&#x…

git标签的简单操作

创建标签 git tag v1.0 # 对head指向的commit创建标签 git tag v1.1 commit_id # 对指定的commit创建标签 git tag v2.0 -a -m "标签注释" commit_id # 创建注释标签查看标签 git tag -l v1* # 查看标签,匹配v1开头的 git show v2.0 # 查看标签详细信息…

Qt如何重写closeEvent

在 Qt 中,重写 closeEvent 函数是处理窗口关闭事件的一种方式。当你关闭一个 Qt 窗口时,该窗口会接收到一个 QCloseEvent 对象。通过重写窗口类的 closeEvent 函数,你可以自定义窗口关闭时的行为。 下面是一个简单的例子,展示了如…

Netty剖析 - Why Netty

文章目录 Why NettyI/O 请求的两个阶段I/O 模型Netty 如何实现自己的 I/O 模型线程模型 - 事件分发器(Event Dispather)弥补 Java NIO 的缺陷更低的资源消耗网络框架的选型Netty 发展现状Netty 的使用 Why Netty I/O 模型、线程模型和事件处理机制优化&a…

php搭建websocket

1.项目终端执行命令:composer require topthink/think-worker 2.0.x 2.config多出三个配置文件: 3.当使用php think worker:gateway命令时,提示不支持Windows。 4.打包项目为zip格式 5.打包数据库 6.阿里云创建记录 7.宝塔面板新增站点…

Vue3 上手笔记

1. Vue3简介 2020年9月18日,Vue.js发布版3.0版本,代号:One Piece(n 经历了:4800次提交、40个RFC、600次PR、300贡献者 官方发版地址:Release v3.0.0 One Piece vuejs/core 截止2023年10月,最…

网盘——数据库操作

关于网盘的数据库模块,主要有以下几个内容:定义数据库操作类、将数据库操作类定义成单例模式、数据库操作 数据库是在Qt里面,定义成操作类,专门用这个类产生对象,对数据库实现操作,那么我们在产生对象的时…

BMS设计中的短路保护和MOSFET选型(下)

二、MOSFET参数 1、电气参数 (1)VGS :加在栅源两极之间的最大电压,一般为:-20V-+20V。 VGS额定电压是栅源两极间可以施加的最大电压。设定该额定电压的主要目的是防止电压过高导致的栅氧化层损伤。实际栅氧化层可承受的电压远高于额定电压,但是会随制造工艺的不同而改变…

01-机器学习概述

机器学习的定义 机器学习是一门从数据中研究算法的科学学科。 机器学习直白来讲, 就是根据已有的数据,进行算法选择,并基于算法和数据 构建模型,最终对未来进行预测。 机器学习就是一个模拟人决策过程的一种程序结构。 机器学…

Django——forms组件

Django——forms组件 forms组件:通过后端在Django中定义forms类,可以在 html 中动态的生成一个表单;检验用户提交的数据。 在应用中创建一个名为 :forms 的py文件 # 导入 forms 组件 from django import forms# 自定义 forms …

【python】(09)理解Python中的zip()和zip(*iterable)

系列文章回顾 【python】(01)初识装饰器Decorator 【python】(02)初识迭代器Iterator 【python】(03)初识生成器Generator 【python】(04)python中实现多任务并发和并行的区别 【python】(05)如何使用python中的logging模块记录日志信息 【python】(06)理解Python中的 lambda 、…