| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 移动开发 -> Android 判断新浪微博APP是否安装 -> 正文阅读 |
|
|
[移动开发]Android 判断新浪微博APP是否安装 |
|
? ? ? ?今天在开发微博分享时遇到一个问题,手机未安装新浪微博APP时,调用微博网页版,但是微博网页版加载太慢,于是应产品需求添加了微博是否安装的判断。 ? ? ? ? 这里介绍两种方法: 一、是根据 PackageManager.getInstalledPackages方法,获取应用列表,通过微博包名判断。 代码如下: public static boolean isWeiboInstalled(@NonNull Context context) {
PackageManager pm;
if ((pm = context.getApplicationContext().getPackageManager()) == null) {
return false;
}
List<PackageInfo> packages = pm.getInstalledPackages(0);
for (PackageInfo info : packages) {
String name = info.packageName.toLowerCase(Locale.ENGLISH);
if ("com.sina.weibo".equals(name)) {
return true;
}
}
return false;
}
????????经测试只支持大部分机型支持,遇到一个小米的安卓11的测试机上,需要打开获取应用列表权限。不符合应用场景。 二、根据 PackageManager.getPackagesForUid来获取列表,该方法无需获取任何权限,经测试暂未遇到问题。 ?代码如下: public static boolean isWeiBoInstalled(@NotNull Context context) {
PackageManager pm = context.getPackageManager();
//系统应用uid从1000开始,用户应用uid从10000(FIRST_APPLICATION_UID)开始,直接合并查询
for (int i = 10000; i <= 11000; i++) {
try {
String[] apps = pm.getPackagesForUid(i);
if (apps != null) {
for (String app : apps) {
PackageInfo info = pm.getPackageInfo(app, 0);
if (info != null && info.packageName.equals("com.sina.weibo")) {
return true;
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
return false;
}
在此记录下结论! |
|
|
| 移动开发 最新文章 |
| Vue3装载axios和element-ui |
| android adb cmd |
| 【xcode】Xcode常用快捷键与技巧 |
| Android开发中的线程池使用 |
| Java 和 Android 的 Base64 |
| Android 测试文字编码格式 |
| 微信小程序支付 |
| 安卓权限记录 |
| 知乎之自动养号 |
| 【Android Jetpack】DataStore |
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年10日历 | -2025/10/25 5:09:11- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |