如何从另一个应用程序访问字符串资源

2024-01-09

我有一个应用程序“A”和“B”应用程序。

假设我在应用程序“A”中有一个字符串资源

<\string name="abc">ABCDEF<\/string>

如何从“B”中的活动访问 abc 的值。

我尝试了以下方法。

try {
    PackageManager pm = getPackageManager();

    ComponentName component = new ComponentName(
        "com.android.myhome",
        "com.android.myhome.WebPortalActivity");
    ActivityInfo activityInfo = pm.getActivityInfo(component, 0);
    Resources res = pm.getResourcesForApplication(activityInfo.applicationInfo);
    int resId = res.getIdentifier("abc", "string", null);
}
catch(NameNotFoundException e){

}

resId 总是返回 0 。任何人都可以告诉我是否可以从应用程序“B”访问字符串 abc

问候, 萨纳特


有可能的!看看下面的代码。这个对我有用。

public void testUseAndroidString() {
    Context context = getContext();
    Resources res = null;
    try {
        //I want to use the clear_activities string in Package com.android.settings
        res = context.getPackageManager().getResourcesForApplication("com.android.settings");
        int resourceId = res.getIdentifier("com.android.settings:string/clear_activities", null, null);
        if(0 != resourceId) {
            CharSequence s = context.getPackageManager().getText("com.android.settings", resourceId, null);
            Log.i(VIEW_LOG_TAG, "resource=" + s);
        }
    } catch (NameNotFoundException e) {
        e.printStackTrace();
    }

}

希望对你有帮助。

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

如何从另一个应用程序访问字符串资源 的相关文章

随机推荐

  • AWS.IAM 不是构造函数 JavaScript SDK

    我正在使用AWSJavaScript SDK Both var s3 new AWS S3 var dynamodb new AWS DynamoDB 工作正常 当我尝试时 var iam new AWS IAM 我看到 类型错误 AWS
  • Flume的Spool Dir可以在远程机器上吗?

    每当新文件到达特定文件夹时 我就尝试将文件从远程计算机获取到我的 hdfs 我在flume中遇到了spool dir的概念 如果spool dir位于运行flume代理的同一台机器上 那么它工作得很好 有什么方法可以在远程计算机中配置假脱机
  • ORA-01830-插入日期和时间[重复]

    这个问题在这里已经有答案了 我有以下字符串值 15 01 2023 18 03 42 我尝试将其插入到 Oracle 中的日期列中 然而 这会产生可怕的 ORA 01830 错误 insert into my schema my table
  • MKAnnotation Swift

    我不确定如何用 swift 语言注释地图 我不知道如何创建 NSObject 类 以下是我尝试过但无法运行的代码 import Foundation import MapKit class MapPin MKAnnotation var m
  • 如何平滑 MATLAB 中的绘图?

    我在图表上绘制了大约 9000 个点 全分辨率 https i stack imgur com VeIP5 jpg 其实剧情并没有我想象的那么顺利 有什么方法可以将图表平滑到所需的程度吗 或者某种形式的阈值处理 以便我可以有选择地平滑太凹凸
  • VBA 参考库

    我是 VBA 新手 一直在为 Office 编写一个小型宏应用程序 我们有大约 80 个用户 他们的电脑设置基本相同 除了少数用户之外 所有用户都可以访问它 我一直在尝试使用 Web 服务引用来自动访问网页 并且我还将 Microsoft
  • 在 Python 中将 2D 图形转换为圆柱体

    At the moment I have a figure that looks like this 由代码生成 import matplotlib pyplot as plt import numpy as np data np rand
  • 无法初始化 OpenGL 渲染器库

    我正在尝试使用 genymotion 打开虚拟 Android 设备 问题是它无法启动 Genymotion 虚拟设备 错误显示无法初始化 OpenGL 渲染器库 我已经检查了 OpenGL 支持 它的版本是 3 0 现在有什么问题吗 无法
  • 来自 Ajax 源的 DataTables 按数据顺序排序并显示格式化日期

    基本上我想将数据从ajax提取到我的列中 但我希望列中的单元格具有data order它们的属性与 ajax 调用的值并使用 moment js 格式化单元格中的数据 我认为这是使其美观且可订购的最佳方式 我找到了 datetime mom
  • 如何订阅改变DependencyProperty? [复制]

    这个问题在这里已经有答案了 可能的重复 监听依赖属性的变化 https stackoverflow com questions 4764916 listen to changes of dependency property 请原谅我的英语
  • 使用 jersey 客户端将 JSON 响应读取为字符串

    我正在使用 jersey 客户端将文件发布到 REST URI 该 URI 以 JSON 形式返回响应 我的要求是将响应读取为字符串 JSON 以下是将数据发布到 Web 服务的代码段 final ClientResponse client
  • C# UTF8 输出保持编码字符完整

    我有一个非常简单的问题 我似乎无法理解 我有一个正确编码的 UTF8 String 我使用 Json NET 解析为 JObject 摆弄一些值并将其写入命令行 保持编码字符完整 除了保持编码字符完整之外 一切都很好 Code var js
  • Ajax 将“Map”对象传递给 Spring MVC 控制器

    Spring MVC 似乎不知道如何将 javascript 地图 映射到 Java 地图对象 在 Web UI 中 例如 foo jsp
  • Selenium 未填写表单上的密码属性

    我有一个非常简单的硒脚本来尝试调试我遇到的问题 我所做的就是填写用户名 然后填写密码 然后检查我输入的密码是否在密码字段中 我这样做的原因是我无法让它进行一般身份验证 当密码正确时始终会出现 密码不正确问题 表单 html
  • ec2:RunInstances 的最低 IAM 策略

    我正在尝试缩小运行预定义机器映像的最小策略范围 该映像基于两个快照 我只想启动 m1 medium 实例类型 在此基础上并在以下方面的帮助下这一页 http docs aws amazon com AWSEC2 latest APIRefe
  • 为 ng-bootstrap modal (NgbModal) 编写单元测试 [Angular 6]

    我在为应用程序中的确认模式编写单元测试时遇到一些问题 这是我想测试的一段代码 confirmModal prompt Are you sure title Confirm Observable
  • 硬盘读取性能问题

    我有一个 C 程序 它从硬盘读取文件并对文件中的数据进行一些处理 我正在使用标准 Win32 API 来读取文件 我的问题是这个程序有时速度非常快 然后突然减慢到之前速度的 1 6 如果我在多次运行中一次又一次地读取相同的文件 那么通常第一
  • Azure Function V3 无法加载文件或程序集“Microsoft.Extensions.DependencyModel,版本=3.1.6.0”

    我们尝试使用 DependencyContext Default RuntimeLibraries 来获取所有项目程序集并将我们想要的类型加载到 ServiceCollection 中 此代码在 asp net core Web 应用程序上
  • 如何在 Unix 中交换文件名?

    有什么方法可以在不使用临时变量的情况下快速完成此操作 有内置函数吗 编辑 谢谢你们的回答 看起来我需要澄清我的问题 但在大多数情况下 你们假设是正确的 有两个文件 并且文件名是相反的 文件 A 的名称为 B name file 文件 B 的
  • 如何从另一个应用程序访问字符串资源

    我有一个应用程序 A 和 B 应用程序 假设我在应用程序 A 中有一个字符串资源 lt string name abc gt ABCDEF lt string gt 如何从 B 中的活动访问 abc 的值 我尝试了以下方法 try Pack