我有一个在第二个应用程序中使用资源的应用程序,并且在某些条件下应该更改第二个应用程序中的资源,现在我想解压缩我的主应用程序中的第二个.apk
文件并更改其资源,然后重新打包并最终安装它。
所有两个应用程序都是我的,并使用eClipse LUNA
创建。
如何在设备内执行此操作?
答案 0 :(得分:1)
你不能,我的意思是它们是两个独立的应用程序,因为每个应用程序都在自己的进程中运行。
即你可以在 manifest.xml 中使用android:sharedUserId,这两个应用都应使用相同的证书进行签名
将与其他人共享的Linux用户ID的名称 应用。默认情况下,Android会为每个应用程序分配自己的应用 唯一的用户ID。但是,如果将此属性设置为相同的值 对于两个或更多应用程序,它们将共享相同的ID - 只要它们也由同一证书签署。 具有相同用户ID的应用程序可以访问彼此的数据,如果 期望,在同一过程中运行。
它将类似于以下
App 1
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.meg7.app1"
android:sharedUserId="com.meg7.shared">
App 2
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.meg7.app2"
android:sharedUserId="com.meg7.shared">
并在app1中使用以下内容
Context app2Context = this.createPackageContext( "com.meg7.app2", Context.CONTEXT_IGNORE_SECURITY);// CONTEXT_INCLUDE_CODE
app2Context.getResources().getDrawable(resId);
你是什么意思
第二个应用程序内的资源应该改变