apk分享: Android应用更换皮肤功能的实现思路教程。

Android 的发展确实太快了,每年的都有很多新东西出现,想要覆盖所有新东西感觉也不太可能,我这里主要说一下主要的 Android 的主要新技术发展,其实了解 Android 的发展趋势,可能对开发者更有帮助。

开发工具

  1. Android Studio: Google 官方放弃 Eclipse 和 Android Studio 普及。AS 虽然不算新,但是对 Android Studio 这个软件的更新速度快的惊人,有大量的新功能发布。例如支持很多注解代码提示注解、Live code template、支持自动生成 Parcelable 实现等等,作为开发者,持续关注这个更新列表 Recent Changes ,一定会让你的写代码的生活更加美好。
  2. Android  ijiami:开发者面对目前很对APP被盗取源码、植入恶意病毒、添加广告后通过二次打包成为盗版产品进入渠道,不仅直接导致开发者的劳动果实被窃取,创意被剽窃,利益受到严重损害,更导致APP用户体验下降,或造成直接经济损失。http://www.ijiami.cn/

Android应用更换皮肤功能的实现思路

我们可以将皮肤包做成一个apk文件,在应用apk中读取皮肤包中的数据。

应用apk读取皮肤包apk的数据的条件

1. 有相同签名

2. AndroidManifest.xml中配置android:sharedUserId有相同的属性值

满足以上条件,两个apk就能互相访问数据了。

 Android应用更换皮肤功能的实现步骤

1、应用程序和皮肤程序的AndroidManifest.xml中配置

XML/HTML代码

  1. android:sharedUserId="com.yee"

2、应用apk与皮肤apk中对同一功能的皮肤文件名要一致

例如:应用apk的图片路径:\res\drawable-hdpi\XX.png

皮肤apk中的图片文件路径也应该是:\res\drawable-hdpi\XX.png

3、获取皮肤资源

Java代码

  1. Context context = createPackageContext("com.yee.skin", Context.CONTEXT_IGNORE_SECURITY);

获取到皮肤包com.yee.skin对应的Context,通过返回的context对象就可以访问到皮肤apk包com.yee.skin中的任何资源。

在应用apk中要获得皮肤apk中的buttonbackground.png的代码如下

Java代码

Drawable drawable = context.getResources().getDrawable(R.drawable.buttonbackground);

时间: 2024-11-03 05:23:46

apk分享: Android应用更换皮肤功能的实现思路教程。的相关文章

Android应用切换皮肤功能实现(二)

原文地址http://www.apkbus.com/forum.php?mod=viewthread&tid=149034&highlight=%E7%9A%AE%E8%82%A4 上次写完应用切换皮肤功能实现的时候,有网友提了些问题.我觉得上次说的还不够详细吧.现在接着再写详细点.这次再在布局里增加了三个按钮图片的设置和一个字体颜色的设置.1.其实上次只是讲到了切换皮肤时,只是替换了图片资源,其实连布局都可以切换.当然布局的切换要是apk类型的皮肤包才行.首先我们写好3个布局,把三个按钮

Android应用切换皮肤功能实现

原文地址:http://www.eoeandroid.com/thread-318159-1-1.html 现在大多数android应用都支持切换皮肤的功能.比如千千静听,墨迹天气等等.本文介绍两种切换皮肤的方法. 1.第一种是通过安装皮肤apk的方式. 当安装了皮肤apk包之后,主程序只需要读取皮肤apk包里的图片资源.就可以实现切换皮肤了. 要获取apk皮肤包里的图片资源,需要获取到皮肤apk包的上下文Context. [mw_shl_code=java,true] try { curren

干货分享——android源码分享网站

干货分享--android源码分享网站 android源码应用分享站点,各种技术分支的源码都有,现在分享给大家 安卓源码服务专家 集合了大量的例子源码,总会找到你想要的 http://www.javaapk.com/ 泡在网上的日子 实时分享android最新的开源项目,大量的教程 http://www.jcodecraeer.com/ android的code4app--apkbus 大量的例子源码和android开发文档 http://d.apkbus.com/ 安卓巴士 http://ww

Android更换皮肤解决方案

Android更换皮肤解决方案 转载请注明出处:IT_xiao小巫 本篇博客要给大家分享的一个关于Android应用换肤的Demo,大家可以到我的github去下载demo,以后博文涉及到的代码均会上传到github中统一管理. github地址:https://github.com/devilWwj/Android-skin-update 思路 换肤功能一般有什么? 元素一般有背景颜色.字体颜色.图片.布局等等 我们知道Android中有主题Theme还有style,theme是针对整个act

Android 实现切换主题皮肤功能(类似于众多app中的 夜间模式,主题包等)

首先来个最简单的一键切换主题功能,就做个白天和晚上的主题好了. 先看我们的styles文件: 1 <resources> 2 3 <!-- Base application theme. --> 4 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 5 <!-- Customize your theme here. --> 6 &l

android 简单的更换皮肤

更换皮肤 1.更换皮肤其实就是更换Activity的背景图片 直接上代码: Activity: 1 public class MainActivity extends Activity implements OnClickListener { 2 3 private SkinManager skinManager; 4 private int downNums; 5 private Button btn; 6 7 @Override 8 protected void onCreate(Bundl

visual studio 2012更换皮肤、功能添加

首先在vs2012的菜单:工具->扩展和更新,打开扩展和更新窗口,点击左侧“联机”,搜索栏里面输入Theme Editor.然后点击按钮,安装之后,在工具->选项->环境常规 面板上面颜色主题下拉框,就可以选择换肤了.附图 visual studio 2012更换皮肤.功能添加

Android更换头像功能实现

现在不管什么APP都有个头像,如果你看见没有头像的APP就会感觉非常奇怪,以前头像都是方的,后来就变成圆的,我估计在过个几年就得来个五角星形状的头像,下面我把更换头像的代码写来: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width

Android实现换肤功能(二)

前两天写的上章关于换肤的功能获得了很好的反响,今天为大家介绍另一种方式.今天实现的策略也是网友建议的,然后我自己去写了个demo,大家自己评估下相比第一种方式的优势和劣势在哪里. 简单介绍下关于第一种关于换肤实现的方法一些不友好的地方,比如点击了换肤的功能键,需要先下载一个资源apk,然后再去引用其中的资源ID,于用户使用起来确实有有很多不便之处.今天为大家介绍的方法是克服了这一弊端的,可以实现直接在应用内切换,把资源文件存储在本地apk的,读取和操作也是更加便捷的,下面介绍下大致的一个实现逻辑