Java 主应用下载另一个应用,然后使用它

Java 主应用下载另一个应用,然后使用它,java,android,download,apk,Java,Android,Download,Apk,我想做的可能很难解释或理解,所以我快速画了一幅画 首先,我们有两个Android应用程序。显示“Hello World”和B有一个按钮(可能)可以下载一个应用程序(在网上或本地) 当我们点击B按钮,下载一个应用程序,并安装它(就像你在任何市场下载它),然后,使用一个应用程序来修改B应用程序 我不知道这是否可能: 下载应用程序并以编程方式安装 创建一个像这样的“变形”Android应用程序 如果我必须用一句话来总结我想要的,那就是: 使用B刚刚下载并安装的应用程序修改B应用程序。我确信您可以下载这

我想做的可能很难解释或理解,所以我快速画了一幅画

首先,我们有两个Android应用程序。显示“Hello World”和B有一个按钮(可能)可以下载一个应用程序(在网上或本地)

当我们点击B按钮,下载一个应用程序,并安装它(就像你在任何市场下载它),然后,使用一个应用程序来修改B应用程序

我不知道这是否可能:

  • 下载应用程序并以编程方式安装
  • 创建一个像这样的“变形”Android应用程序
  • 如果我必须用一句话来总结我想要的,那就是:

    使用B刚刚下载并安装的应用程序修改B应用程序。

    我确信您可以下载这些SDK(这里显然是APK)并使用
    片段或任何代码进行注入或其他操作

    可能需要使用反射,因为主应用程序“B”不会解析“A”中的类

    也许您的“A”模块应该公开它所拥有的方法/变量/片段,就像在嵌入式JSON描述性资产中一样,“B”可以解析并知道如何处理这些方法/变量/片段


    这里的要点显然是将所有“A”代码从“B”中移开,这意味着“B”具有灵活性。下载应用程序并以编程方式安装:

    //if the download is complete then have a flag
    //use this to run another application from your application B
        Intent intent = getPackageManager().getLaunchIntentForPackage("com.package.A");
        startActivity(intent);
    
    是的,您可以通过编程方式完成,但会提示用户安装应用程序(例如接受新应用程序将使用的权限)

    创建一个类似这样的“变形”Android应用程序:

    //if the download is complete then have a flag
    //use this to run another application from your application B
        Intent intent = getPackageManager().getLaunchIntentForPackage("com.package.A");
        startActivity(intent);
    

    “A”是应用程序还是扩展/插件?顺便说一句,我能想到的一种方法是在应用程序中检测它的存在并在“B”中激活新的东西,就像“pro to unlock feature”应用程序一样。a是一个应用程序,我的意思是B必须下载SDK然后安装它。然后B必须使用组件“变形”我可以从服务器下载应用程序吗?对于变形,我的意思是,B必须随着一个动作而改变,但仍然可以看到B的动作。在您的解决方案中,A将完全取代B不?不,它不会取代B,您在android中使用过Teamviewer Quicksupport应用程序吗?它具有您要求的类似功能。它下载了另一个应用程序,但无法替换旧应用程序,因为你无法用其他应用程序卸载一个应用程序。你仍然可以看到我不想卸载旧应用程序。我想让我的“老”应用程序与下载的应用程序一起进化。我也这么想,但我真的不知道该怎么做。我认为A必须包含一些存储代码,或者idk,当然它将包含代码。如果你想要比简单的活动更精致的东西,我只看到我的选择,这确实需要一些工作:来吧,你正在将一个应用程序注入另一个应用程序:)是的:p这是我实习的主题,我对安卓还是有点陌生,我必须努力工作^-^你想做的工作并不容易。定义更多您想要集成到“B”中的“A”,以便我们可以进一步提供帮助:注入片段、活动、对象、静态?。事实上,我还没有定义任何内容。我必须让我的应用程序B演变为A,没有具体的问题,我必须发现或知道这是否可能,以及以何种方式