解决android中,通过run as将应用安装到模拟器或真机上总是覆盖原有同名应用问题

本文介绍了在Android开发中遇到的应用覆盖安装问题,并提供了三种解决思路:更改应用名称、更改版本号及更改包名。最终确定通过修改包名来避免应用覆盖安装。

    应用开发是个迭代优化过程,一款优秀的手机应用在发布之前期间肯定需要大量的测试,或在android模拟器上测试、或在真机上面测试。学习android开发的一个偶然过程中,我发现每次通过eclipse中Run As→Android Application将应用安装到真机或者是android模拟器上面时,原先已经安装的同名应用已经被覆盖。而其实修改前的那个版本的应用也是我所需要的(我需要比对修改前和修改后应用变化以及优劣),所以,我开始找寻能够解决应用覆盖的办法!

    一、改变应用名

     通过改变res下values文件夹中strings.xml文件,将 <string name="app_name">app1</string>改为 <string name="app_name">app2</string>,之后保存run as application后,发现应用名字从app1变为了app2,但是依旧只得到一个应用,事实证明这种方法不可行。PS:更改AndroidManifest.xml中android:label="@String/App Name"为AndroidManifest.xml中android:label="app2",发现不但没能解决应用覆盖的问题,而且应用名也没变化,但在Settings中Apps会发现应用标签变了(粗心大意看到App Name就上了【汗】【二哈】)

    二、改变版本号

    通过改变AndroidManfiest中android:versionCode="1" android:versionName="1.0"为android:versionCode="2"android:versionName="2.0",测试后发现依旧只得到一个应用,原来的应用还是被覆盖掉了,通过Settings中Apps可以查看到当下程序的版本号变化了。   

    三、改变包名

    屡挫屡败走投无路的我通过修改Manifest中包的名字:package="com.example.app2"后发觉终于成功了,原有应用没有被覆盖。唉~仔细分析应该知道,应用安装到手机或模拟器上面除了.apk文件肯定还会把包复制,而如果已经有同名包存在,默认就把之前包删掉了。

使用命令 `npx react-native run-android` 会自动完成以下操作: 1. 构建 React Native 项目(JavaScript 编译成 bundle)。 2. 启动 Android 模拟器(如果没有运行)。 3. 将应用安装到连接的 Android 设备模拟器上。 4. 启动应用。 --- ### ✅ 确保以下条件满足,应用才能安装到手机: #### 1. **连接真实设备** - 使用 USB 数据线将 Android 手机连接到电脑。 - 在手机上启用 **开发者选项** 和 **USB 调试模式**。 - 在终端输入以下命令验证设备是否被识别: ```bash adb devices ``` 如果看到设备名称,说明已连接成功。 #### 2. **确保 `adb` 正常工作** - 如果 `adb devices` 没有列出设备,请安装更新 [Android Platform Tools](https://developer.android.com/tools/releases/platform-tools)。 #### 3. **运行命令安装应用** ```bash npx react-native run-android ``` 该命令会自动检测连接的设备,并将应用安装到手机上。 --- ### 📦 如果只想安装 APK 到手机(不运行开发服务器): 你可以手动构建 APK 并安装: #### 1. 构建 APK: ```bash npx react-native build-android ``` 生成的 APK 路径一般为: ``` android/app/build/outputs/apk/debug/app-debug.apk ``` #### 2. 使用 `adb` 安装 APK: ```bash adb install app-debug.apk ``` > 如果你已经安装过该应用,使用 `-r` 参数进行覆盖安装: ```bash adb install -r app-debug.apk ``` --- ### ✅ 小贴士: - 如果想在多台设备上同时安装,可以使用 `--deviceId` 指定设备。 - 想要生成正式发布版 APK?请使用 `--mode=release` 参数构建签名 APK。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值