以编程方式安装 APK - 返回值

2023-12-14

在我的应用程序中,我从我的活动中调用 javascript 接口。在与此界面关联的 web 视图中,我要求用户下载并安装 APK。我正在使用“startActivityForResult”来启动安装过程(下载文件后)。这是代码:

Intent promptInstall = new Intent(Intent.ACTION_VIEW);
        promptInstall.setDataAndType(Uri.fromFile(new File(PATH + "app.apk")), "application/vnd.android.package-archive");
        startActivityForResult(promptInstall, ACCEPT_INSTALL);

我在主活动类中使用“onActivityResult”来捕获上述活动的返回值。这是代码:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Log.d("requestCode, resultCode from Install APK: ", Integer.toString(requestCode) + ", " + Integer.toString(resultCode));   
}

我面临的问题是“resultCode”始终返回 0,无论用户是否选择安装应用程序。我真的需要知道用户是否安装了该应用程序。关于为什么返回值总是 0 有什么想法吗?

我的最后一招是使用packagemanager在onActivityResult函数中检查应用程序是否存在,以确定应用程序是否已安装,但我想知道为什么返回值始终为0。

非常感谢...


我们开发了一个应用市场,也遇到了同样的问题。我们的解决方案是按照您的建议使用数据包管理器。

我研究了一些意图过滤器,因为安装过程似乎有一些意图。但我们无法让它运行。数据包管理器解决方案工作正常,因为您可以检查应用程序版本,这对于应用程序更新很重要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式安装 APK - 返回值 的相关文章

  • 如何从 SDK 实现每个会话的 Google Places 自动完成功能?

    是否可以从 Android 和 iOS 应用程序的 place sdk 实现基于会话的自动完成 根据 6 月 11 日生效的新 Google 地图框架定价 对自动完成的请求可以分为基于击键 会话的请求 我找不到描述实施步骤的文档 除了这个参
  • Android Studio:XML 布局中的“包装在容器中”

    编辑 XML 布局文件时 Eclipse 有一项称为 包裹在容器中 的功能 重新格式化 gt Android gt 可让您选择一个或多个视图并在其周围包裹您选择的布局 Android Studio中有类似的东西吗 目前正在实施中 问题 69
  • AdapterContextMenuInfo 始终为 null

    我尝试通过 android 开发文档中的书来做到这一点 this didn t create a menu i don t know why registerForContextMenu getListView setListAdapter
  • 如何正确释放Android MediaPlayer

    我正在尝试向我的 Android 应用程序添加一个按钮 当点击该按钮时它会播放 MP3 我已经让它工作了 但没有办法释放 mediaPlayer 对象 因此即使在我离开活动后它仍然会继续播放 如果我在react 方法之外初始化MediaPl
  • Android Q:file.mkdirs() 返回 false

    我们有一个应用程序 使用外部存储来存储一些临时文件 图像 二进制数据 该代码已经运行了几年 直到最近才发生重大变化 在 Android Q 上它不起作用 File f new File Environment getExternalStor
  • 如何在 Linux 内核中定义并触发我自己的新软中断?

    我想在 Linux 内核中创建自己的软中断 这是正确的方法吗 In the init我想触发该模块的softirq我将添加一个调用 394 void open softirq int nr void action struct softir
  • Bitmap.getPixels() 中的 IllegalArgumentException

    我想将数据从位图复制到int using getPixels 这是我当前的代码 int pixels new int myBitmap getHeight myBitmap getWidth myBitmap getPixels pixel
  • 如何重定向到 instagram://user?username={username}

    我的 html 页面上有这个链接 可以在特定用户上打开 Instagram 应用程序 a href Link to Instagram Profile a 我一直在寻找自动运行 url instagram user username USE
  • 如何更改终端的默认目录?

    我想更改 Android Studio v2 2 2 终端的默认目录 当我打开终端时 它基于项目的目录 C 项目路径 我经常需要使用adb shell 所以我必须导航到 SDK 路径 平台工具 才能使用 adb 命令 是否可以更改终端的默认
  • Android 2.3 模拟器在更新位置时崩溃

    我正在使用 Eclipse 编写和调试 Android 应用程序 我需要做的事情之一是更新设备的位置 因此我尝试使用模拟器控制窗口中的位置控制面板 在 手动 选项卡上 我选择 十进制 输入有效的纬度和经度 然后单击 发送 不幸的是 接下来发
  • 我应该释放或重置 MediaPlayer 吗?

    我有自己的自定义适配器类 称为 WordAdapter 并且我正在使用媒体播放器 名为pronounce WordAdapter 类中的全局变量 我有不同的活动 其中每个列表项都有线性布局 名为linearLayout 我正在设置onCli
  • 如何在 Android 中从 WorkManager 取消工作?

    我已经保存了 WorkManagerUUID转换成String在领域数据库中 这是代码 Constraints constraints new Constraints Builder setRequiredNetworkType Netwo
  • 您使用什么物理 Android 设备进行测试?

    有什么好的推荐用于测试目的的物理 Android 设备吗 我正在苹果阵营寻找像 iPod touch 这样的设备 可以帮助 iOS 开发人员测试他们的东西 我知道有 Nexus One 但那东西相当昂贵 而且我并不真正关心手机的东西 而是可
  • Android Studio 缓慢的增量构建

    我已经完成了许多步骤来完善我们的构建系统 those https stackoverflow com questions 16775197 building and running app via gradle and android st
  • 上网本上可以进行Android开发吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想使用我的上网本进行 Android 开发 但是当我尝试使用 Eclipse 运行 SDK 时 没有加载任何内容 上网本对于 Android 开发来
  • Android - 以编程方式选择菜单选项

    有没有办法以编程方式选择菜单选项 基本上 我希望视图中的按钮能够执行与按特定菜单选项相同的操作 我正在考虑尝试调用 onOptionsItemSelected MenuItem item 但我不知道要为菜单项添加什么 是的 有一种方法可以选
  • 通过电子邮件发送文本文件附件

    我正在尝试附加一个文本文件以便通过电子邮件发送 但每当我打开电子邮件应用程序时 它都会说该文件不存在 请帮助 Intent i new Intent Intent ACTION SEND i setType text plain i put
  • 如何使用 AccessibilityService 在 Android 中模拟按键

    我正在编写一个辅助服务 我一直在尝试在应用程序上进行一些自动搜索 我使用accessibilityservice action paste来填充EditText 然后我需要模拟软键盘上的按键 但我不知道如何做 你们能帮我一下吗 你可以尝试A
  • 我的应用程序中的后退按钮出现问题[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想在手机关闭时清除共享首选项值 你
  • 有没有任何代码可以在android中设置壁纸而无需裁剪和缩放?

    我正在创建一个画廊应用程序 我的第一个应用程序 这是我的代码 Bitmap bmd BitmapFactory decodeStream is try getApplicationContext setWallpaper bmd catch

随机推荐

  • 使用 VS2017 安装程序项目安装 vcredist_x64

    我目前想为 VS2017 项目创建一个安装程序 该项目的先决条件是 vcredist x64 要创建我已经安装的安装程序 ClickOnce 发布 通过 VS2017 安装程序 Microsoft Visual Studio 2017 安装
  • 连接PHP源代码并将表单提交到MySQL数据库

    我正在尝试学习 PHP 并尝试将 MySQL 数据库与我的 PHP 代码连接起来 以创建一个提交表单 让我可以将数据输入到数据库中 我的问题是源代码正在连接 但 HTML 没有将变量发布到 PHP 文件 我真的需要一些帮助 这是我的 HTM
  • Google BigQuery 架构与使用 load_table_from_dataframe 的数字数据类型发生冲突(pyarrow 错误)

    当我将数字数据 int64 或 float64 从 Pandas 数据帧上传到 数字 Google BigQuery 数据类型 pyarrow lib ArrowInvalid 获得长度为 8 的字节串 预期为 16 我尝试更改 Panda
  • RSpec测试数据库索引

    有没有办法用 RSpec 测试数据库索引是否存在 我在用着friendly id gem我经常忘记为 slug 字段创建数据库索引 因此 我想将其包含在我的 RSpec 测试中 您可以使用index exists check unique通
  • 调试时在 pool.close() 上抛出异常,但在运行时不会抛出异常

    我认为我在 Python 2 7 中处理这个问题时没有遇到这个问题 但是在 3 7 中调试时 Python 会抛出异常pool close 叫做 这是该函数的相关部分 pool multiprocessing Pool 6 iterator
  • 将 XYZ 文件中的不规则 3D 数据插值到规则网格

    我有一个包含大量 3D 坐标的 xyz 文件 如下所示 370373 771 6535261 431 2 908 370373 788 6535261 441 2 911 370373 787 6535261 442 2 909 37037
  • 如何使用 jQuery 删除父元素

    我的 jsp 中有一些列表项标签 每个列表项内部都有一些元素 包括一个称为 删除 的链接 a 标签 我想要的只是在单击链接时删除整个列表项 这是我的代码的结构 a click function event event preventDefa
  • MongoDB根据对象成员过滤对象数组内容

    我有以下对象数组 想知道是否有一种方法可以过滤结果 仅返回 QtyIn 记录或仅返回 QtyOut 记录 任何提示都将受到高度赞赏 感谢您的帮助 warehouseID 1234 transactions qtyIn 10 transDat
  • Python - beautifulsoup - 如何处理丢失的结束标签

    我想使用 beautifulsoup 从 html 代码中抓取表格 html 的片段如下所示 使用时table findAll tr 我得到整个表 而不仅仅是行 可能是因为 html 代码中缺少结束标签 table border 0 cel
  • Django FormWizards:如何在表单之间轻松传递用户输入的数据?

    我正在使用 Django 1 4 3 中的 FormWizard 功能 我已经成功创建了一个 4 步表单 在表单的前 3 个步骤中 它正确地从用户那里获取信息 验证信息等 在第 4 步中 它现在只显示一个 确认 按钮 没有其他的 当您在第
  • 连接到 Poloniex Push-API

    我想连接到Poloniex 的推送 API 他们在他们的页面上写着以下内容 要使用推送 API 请连接到 wss api poloniex com 并订阅所需的提要 wss WebSocket 安全 gt SSL 保护 他们还给出了 Nod
  • 对 Yesod 中的 selectOneMany 感到困惑

    甜蜜但简单 持久连接是如何工作的 考虑以下模型 Person number Int numberOfEyes Int firstName FirstnamesId lastName LastnamesId Lastnames lastnam
  • 根据子字符串中的数字对字符串进行排序

    我有一个像这样的字符串 is2 Thi1s T4est 3a 我需要对其进行排序 所以 该数组看起来像这样 Thi1s is2 3a T4est 数字可以出现在字符串中的任何位置 我知道如何按字母顺序对字符串进行排序以及如何对数字数组进行排
  • 使用 openpyxl 复制整个工作表

    请有人给我一个例子 如何复制带有样式的整个工作表 从行和列 到同一工作簿中的第二个工作表 也可以在新的工作簿中 谢谢 P S 我尝试进行深度复制 但未能保存更改的数据单元格 目的是 我尝试用我的数据填充一些工作表 第一个工作表是我的模板 我
  • 如何在 Lisp 中将函数存储在变量中并使用它

    我想存储一个像这样的函数print在一个变量中 这样我就可以输入一些简短的内容 例如p e g In Scheme define print display print Hello world n alternate way define
  • 通过 RewriteCond 和 .htaccess 对 RewriteRule 进行分组

    我有一个网页模板 用于运行多个登陆页面 htaccess 用于将友好 URL 定向到 PHP 代码中的 pageid 这一切都有效 但目前我必须在每个规则或重定向冲突之前添加重写条件行 您可以在下面的伪代码中看到这一点 RewriteEng
  • DynamoDB 中的复合键具有超过 2 列?

    我正在探索在我所处理的应用程序中使用 DynamoDB 该应用程序目前只有一个数据库组件 在 RDS 上运行的 MySQL 数据库 我们大量使用 AWS 并为我们的数据库使用分片方案 但如果没有人工干预 它只能让我们到目前为止 在使用 Au
  • 在 Visual Studio 中显示构建时间

    我们的构建服务器构建 C 项目之一花费的时间太长 它用视觉工作室2008 跑步devenv com MyApp sln Build see devenv 命令行开关 尽管这是针对较新版本的 VS 有没有办法让 devenv com 记录在解
  • 如何根据表单状态隐藏普通按钮

    我试图隐藏我的保存vanilla根据表单状态按钮 当表单状态 创建时 不应显示普通按钮 我尝试了不同的方法 但没有任何作用 我在 js 中创建一个函数 如果表单处于创建状态 则返回 true function isHideState for
  • 以编程方式安装 APK - 返回值

    在我的应用程序中 我从我的活动中调用 javascript 接口 在与此界面关联的 web 视图中 我要求用户下载并安装 APK 我正在使用 startActivityForResult 来启动安装过程 下载文件后 这是代码 Intent