火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 2534|回复: 6
打印 上一主题 下一主题

[安卓] 怎样判断手机中是否安装过本apk,若已安装,怎样获取其...

[复制链接]

16

主题

65

帖子

250

积分

中级会员

Rank: 3Rank: 3

积分
250
跳转到指定楼层
楼主
发表于 2022-5-29 14:36:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
怎样判断手机中是否安装过本apk,若已安装,怎样获取其版本号?
目的是在安装Apk时检测,若未安装过或版本比当前的低,则复制资源文件到手机,否则不复制,用原来的。
回复

使用道具 举报

11

主题

210

帖子

1415

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1415
沙发
发表于 2022-5-29 16:05:28 | 只看该作者
安卓还没开始学,但是我记得,安卓APK包名必须是唯一的,在安装的时候就是以这个包名来判断是不是同一个软件,在安装时都会提示原版本号多少,新版本号多少,会有安装和取消的按钮让用户选择的。
回复

使用道具 举报

15

主题

405

帖子

3497

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
3497
板凳
发表于 2022-5-29 17:34:14 | 只看该作者
相同版本会询问是否重装。
高于已装版本会提示升级。
低于已装版本会安装失败。
这是系统安装器判断的,不由你的程序控制。
回复

使用道具 举报

439

主题

1万

帖子

3万

积分

超级版主

Rank: 8Rank: 8

积分
36725
地板
发表于 2022-5-29 18:36:44 | 只看该作者
这个是系统接管的。
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

16

主题

65

帖子

250

积分

中级会员

Rank: 3Rank: 3

积分
250
5#
 楼主| 发表于 2022-5-29 21:55:36 | 只看该作者
本帖最后由 liushi 于 2022-5-29 21:58 编辑
创世魂 发表于 2022-5-29 18:36
这个是系统接管的。

我是想要实现向手机中安装新版本APK的时候覆盖上一版本的那个资源文件夹(里面有SQLite库,表结构已改动);安装同一版本(实际上程序做了微调,只是版本号未改,SQLite库表结构未改动)APK的时候不覆盖那个文件夹,只更新程序;我现在无法获取手机中已安装APK的版本号,就不知道该不该覆盖。
回复

使用道具 举报

11

主题

115

帖子

616

积分

高级会员

Rank: 4

积分
616
6#
发表于 2022-5-29 22:13:27 | 只看该作者
liushi 发表于 2022-5-29 21:55
我是想要实现向手机中安装新版本APK的时候覆盖上一版本的那个资源文件夹(里面有SQLite库,表结构已改动) ...

这个只能你自己在程序里进行判断,如果当前程序的sqlite结构是没改变的,则运行哪一部分,改变的运行哪一部分。无法确定的时候,就只能新起名字。不进行覆盖操作。如果结构一样,顶多是复制之前的导入到新库里
回复

使用道具 举报

16

主题

65

帖子

250

积分

中级会员

Rank: 3Rank: 3

积分
250
7#
 楼主| 发表于 2022-5-30 04:59:23 | 只看该作者
已用在资源文件夹里放一个TXT文件记录版本号的办法解决,谢谢各位啦!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-5-20 06:31 , Processed in 0.092120 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表