【问题标题】:Android add extra skin as separate APKAndroid将额外的皮肤添加为单独的APK
【发布时间】:2023-03-14 13:09:01
【问题描述】:

我有一个简单的安卓应用来播放视频。我有一个包含几个按钮的主屏幕。如果您按下按钮,它将播放视频。一切正常。

我的问题是我的主屏幕有一张背景图片,也有一张按钮图片。我有一个按钮来选择应用程序的皮肤。有三个选项。当我选择三个选项时,背景图像和按钮图像会发生变化。现在我想在后期将皮肤(包含背景图像和按钮图像)作为单独的 apk 提供。当我安装这个 apk 时,它应该与已经存在的皮肤一起显示。哪种方法最简单?

谢谢

【问题讨论】:

    标签: android skin


    【解决方案1】:

    我没有尝试从其他 apk 中读取主题,但我认为您可以使用此策略。

    1. 从设备中找到您的主题包。为此,您应该制定命名规则或某种方法来检查该包是否是您的主题 apk。我假设您将主题 apk 命名为 'com.myapp.theme.????'

    2. 如果您找到主题 apk,请从该应用程序中读取资产文件。我不知道该怎么做,但这个链接会帮助你。 Access Assests from another application?

    PackageManager pkgMgr = ctx.getPackageManager();
    List<ApplicationInfo> apps = pkgMgr.getInstalledApplications(PackageManager.GET_META_DATA);
    for (ApplicationInfo ai : apps) {
      String pkgName = ai.packageName;
      if( pkgName.startsWith( "com.myapp.theme" ) {  //this pkg is your theme pkg
           //access asset of this app
      }
    }
    

    fff

    【讨论】:

      猜你喜欢
      • 2011-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多