android studio 项目生成apk的几个问题(备忘)

news2024/11/28 12:43:47

终于自己做的一个小东西要做完了,最后一步是生成apk,这之前遇到几个问题备忘一下。

1、安装完成后有两个图标,分别是两个activity,卸载一个,另一个也没了。

原因:我原来做一时候没有欢迎界面,后来添加了一个activity作为欢迎界面,但androidManifest.xml中关于原来的activity代码没改。所以这种情况有在多个activity且调整过启动页面才会出现的。

大致如下(下面代码是修改过的,正常的):

        <activity
            android:name=".MainActivity_xieyi"
            android:label="@string/软件协议及说明"
            android:screenOrientation="portrait"
            android:exported="false" />
        <activity
            android:name=".FullscreenActivity_desktop"
            android:exported="false"
            android:label="@string/新机域桌面模式"
            android:theme="@style/Theme.NewAreaAutoV1.Fullscreen" />
        <activity
            android:name=".MainActivity_welcome"
            android:exported="true"
            android:label="@string/感谢使用新机域"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".FullscreenActivity"

            android:exported="true"
            android:label="@string/新机域客厅模式">


        </activity>

目前是这个做为启动页面:

 之前是这个:

 而且里面有这段代码:<category android:name="android.intent.category.LAUNCHER" />

所以就有两个页面启动了,安装完就会有两个图标。

解决方法也很简单,把intent-filter那一块删除就行了。

2、修改生成apk的默认文件名。一般生成apk后的文件名一般是app-debug.apk或者app-release.apk,想改成自己想来的文件名修改如下:

在build.gradle(module)文件中,在android{}中添加如下代码:

android {
    ......

    android.applicationVariants.all {
        variant ->
            variant.outputs.all {
                //修改为自己想要的apk文件名,扩展名apk
                outputFileName = "NewAreaAutoVer.apk"

}

位置:

 3、制作自己apk的图标。

找个png图片,改名为icon.pgn(不改行不行我也不知道)不要太大,拷贝到“项目名\app\src\main\res\mipmap\"下,我这个项目里面还有很多文件夹,我直接放到mipmap-mdpi这个文件夹下,看起来也没什么问题。位置如图:

 修改androidmanifest.xml文件,如下图,文件名不用扩展名:

 如果图片是下方形的就没什么问题,不然会拉伸,我是ps了一下,做成正方形的,像下面这样,马马虎虎对付用吧。

 4、各个activity英文改中文。

这个我想大神应该遇不到,我是小白,所以遇到了,开始做的时候没做什么规划,想到哪做到哪,所以到外就是英文,但apk发布的时候肯定要用中文,所以要到处改。比如上面说的那些activity原来就都是英文的。

就是修改androidmanifest.xml文件里面的activity的,label。

反正我现在这个版本的android studio是2021.2.1版的,一定要像下面这样写,我到现在也不知道怎么称呼这个@string叫什么,反正改就行了:

 直接改会显示错误,要处理一下,其实修改value下面的string.xml就行了。

位置如下,照样改就行了:

 

大致不这些。

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

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

相关文章

总结数据结构常用树

树&#xff1a;只有一个根节点&#xff0c;有孩子结点&#xff0c;父节点 二叉树&#xff1a;每个节点最多有两个孩子结点。 二分搜索树&#xff1a;也叫二叉排序树&#xff0c;首先它是一颗二叉树&#xff0c;且左右孩子都存在时&#xff0c;左孩子都小于当前节点值&#xf…

计算机数制(进制转换,原码,反码,补码,真值)

目录 区分进制 带小数点的进制转化 进制转换练习 符号数的表示方法 区分&#xff1a; 考点&#xff1a;给你原码转换补码&#xff0c;补码最负的数的表示&#xff0c;0的表示 原码&#xff0c;反码&#xff0c;补码练习 区分进制 注意微机原理这门课用的是后缀的方式&#xff0…

小学生python游戏编程arcade----碰撞精灵消失问题

小学生python游戏编程arcade----碰撞精灵消失问题前言碰撞精灵消失问题1、多余的精灵不能及时消失1.1 问题1.2 失败代码1.3 记录备忘1.4 代码实现2、放置位置2.1 代码放在ondraw中可以2.2 在update中也可以2.3 碰撞中3、玩家子弹击中敌坦克后的爆炸效果3.1 爆炸类3.2 爆炸列表准…

2022年铁路行业研究报告

第一章 行业概况 铁路运输是主要的陆上交通运输方式之一&#xff0c;铁路是指在综合交通运输体系中&#xff0c;用于运行火车等交通工具行驶的轨道线路。铁路运输是主要的陆上交通运输方式之一&#xff0c;是通过机车牵引车辆组成列车在铁轨上运送客或货的一种运输方式。相比其…

AVL双旋转思路分析与图解

AVL树双旋转思路分析与图解 首先我们要知道什么情况之下我们是要进行双旋转? 当最小不平衡子树为LR型或者RL型的时候, 那么什么时候最小不平衡子树是RL型或者什么时候又是LR型的? 下面我们就先给出LR型, RL型, LL型, RR型最小不平衡子树的概念: LR型最小不平衡子树: 首先拿…

Linux 动静态库

目录 静态库和动态库 gcc规则使用动静态库的规则&#xff1a; 制作静态库 使用静态库 方法1. 方法2. 制作动态库 使用动态库 方法1&#xff1a; 方法2&#xff1a; 方法3&#xff1a; 方法4&#xff1a; 进程&#xff0c;静态库&#xff0c;动态库 静态库和动态库 …

传统瀑布模型和实际瀑布模型

传统瀑布模型&#xff1a; 瀑布模型是所有模型的基础框架 特点&#xff1a; 线性的开发流程&#xff0c;不能够应对需求的变化。 必须等前一阶段的工作完成后&#xff0c;才能开始后一阶段的工作 前一阶段的输出文档就是后一阶段的输入文档&#xff0c;因此只有前一阶段的输…

Map及其实现类、锁

HashMap、HashTable、ConcurrentHashMap 区别 一.HashMap和HashTable的区别 1、两者父类不同 HashMap是继承自AbstractMap类&#xff0c;而Hashtable是继承自Dictionary类。不过它们都实现了同时实现了map、Cloneable&#xff08;可复制&#xff09;、Serializable&#xff0…

朱松纯教授场景理解相关文章简介

朱松纯教授场景理解相关文章简介 Holistic 3D Scene Parsing and Reconstruction from a Single RGB Image 基于单张图像的整体场景解译与重建 我们提出了一个计算框架来联合解译单帧RGB图像&#xff0c;通过使用一系列的随机语法模型生成的CAD模型构成整体的3D结构。具体地说…

智慧农业SaaS系统

真正的大师,永远都怀着一颗学徒的心&#xff01; 一、项目简介 智慧农业SaaS系统 二、实现功能 监控管理&#xff1a;支持海康摄像头监控。 用户管理&#xff1a;支持用户是系统操作者&#xff0c;该功能主要完成系统用户配置。 岗位管理&#xff1a;支持配置系统用户所属担…

bugku渗透测试 1 writeup(无需VPS)

靶场地址&#xff1a;BugKu渗透测试1 该靶场只需要20金币就可以开启两小时&#xff0c;算的上非常良心实惠了&#xff0c;趁着有空赶紧刷一刷题目 目录 第一场景&#xff1a; 第二场景&#xff1a; 第三场景&#xff1a; 第四场景&#xff1a; 第五场景&#xff1a; 第六…

第五章:面向对象(上)

第五章&#xff1a;面向对象(上) 5.1&#xff1a;面向过程与面向对象 面向过程(POP)与面向对象(OOP) ​ 二者都是一种思想&#xff0c;面向对象是相对于面向过程而言的。面向过程&#xff0c;强调的是功能行为&#xff0c;以函数为最小值&#xff0c;考虑怎么做。面向对象&…

【BOOST C++ 线程】boost::thread库的基本使用方法总结

一、说明 boost::thread的六种使用方法总结&#xff0c;本文初步介绍线程的函数、构造、执行的详细解释。 二、boost::thread的几个函数 函数功能join()让主进程等待子线程执行完毕后再继续执行get_id()获得线程的 id 号detach()标线程就成为了守护线程&#xff0c;驻留后台运…

【项目实战:核酸检测平台】第二章 大卸八块

本章目标 完成项目架构设计和数据库结构设计 重点&#xff1a;全是重点 文章目录本章目标总体设计&#xff08;架构设计&#xff09;技术选型部署结构设计工程文档结构设计第一步&#xff1a;项目和模块命名第二步&#xff1a;约定项目工程文件内容第三步&#xff1a;设计文档…

Hadoop高可用环境搭建-HDFSNameNode高可用搭建、Yarn高可用搭建

本文环境搭建的前提条件&#xff1a;JDK、Zookeeper、Hadoop完全分布式环境搭建完成。如果未满足条件且不会搭建&#xff0c;可以前往博主的主页搜索相关文章进行搭建。 目录 一、HDFSNameNode高可用搭建 二、 Yarn高可用搭建 本文主节点hostname&#xff1a;master&#xff0c…

安装semantic segmentation editor

两天啊&#xff0c; 整整两天&#xff0c;知道这两天我是怎么过的吗&#xff1f;&#xff1f;1 步骤概述&#xff08;以下命令行都是在管理员条件下执行&#xff09;1.1 安装choco1.2 安装meteor1.3 安装semantic segmentation editor2过程3 我还是用Ubuntu安装过3.1Window安装…

【Mysql】主从一致

【Mysql】主从一致&#xff08;一&#xff09;主从复制【1】什么是主从复制【2】为什么需要主从复制【3】mysql复制原理【4】具体步骤【5】mysql主从形式【6】具体操作过程&#xff08;1&#xff09;首先在虚拟机服务器上安装mysql&#xff0c;进行简单的配置&#xff08;2&…

力扣(LeetCode)38. 外观数列(C++)

双指针模拟 初始字符串 sss 已给定&#xff0c;根据 sss 构造下一个外观数列 ttt &#xff0c;构造完毕&#xff0c; ststst &#xff0c;循环 n−1n-1n−1 次&#xff0c;构造出一个外观数列。 构造步骤 : 令 jjj 指向当前元素 &#xff0c; kkk 从 jjj 往右&#xff0c;记录…

新库上线 | CnOpenData招聘公司基本信息扩展数据

招聘公司基本信息扩展数据 一、数据简介 线上招聘是指各公司将其岗位需求、工作地点能力要求和薪酬等招聘信息发布在互联网上&#xff0c;供求职者参考&#xff0c;以线上的方式进行招聘。线上招聘网站是通过互联网相关技术&#xff0c;集结这些线上招聘信息&#xff0c;帮助雇…

Linux下自动删除过期备份和自动异地备份的脚本

每天自动删除过期备份 首先编写一个简单的Shell脚本DeleteExpireBackup.sh&#xff1a; 1 2 3 4 5 6 7 #!/bin/bash # 修改需要删除的路径 location"/database/backup/" # 删除最后修改时间为30天以前的备份文件夹 find $location -mtime 30 -type d | xargs rm …