2013-05-01 75 views
0

我有一个Android应用程序,我的客户端请求将其作为SDK打包。 SDK应该用SDK.open({parameters})之类的东西调用,将会打开一个新的活动并允许关闭它自己。如何将Android应用程序作为SDK制作

不用说,SDK应该被编译并且只有它的接口向公众开放。

P.S - 如果有任何影响,该项目也使用NDK。

我不知道从哪里开始 - 帮助将不胜感激:)

编辑: 真正需要的是要利用现有的活动,与所有它的资产,“资源”文件夹,NDK代码更多 - 并包装成“东西”,可以合并到任何其他应用程序和需要调用。当需要时,它应该能够关闭自己并返回到调用它的原始应用程序,释放它的所有内存。

谢谢

+0

sdk停留在软件开发工具包上,代码在人们创建自己的代码时,就像使用java做的一样。可能你正在寻找与SDK不同的东西。 – Blackbelt 2013-05-01 13:11:44

+0

你的意思是你想要一个其他应用程序可以调用的公共意图?这听起来更像你所需要的。 – 2013-05-01 13:13:59

+1

请与知道他在说什么的客户谈谈,而不是经理...... – RvdK 2013-05-01 13:14:58

回答

0

过去,我已经从同一个库中构建了应用程序。您可以运行Activitys以及库中可能需要的任何内容,并将其挂接到其他应用程序中。例如,如果你看看this appthis app,它们看起来几乎是相同的,但它是因为我为这两个库使用了单个库。要创建应用程序的新版本,我只需要一个启动库的单个活动。要自定义应用程序,我有一个类静态的,我从与初始化应用的单个页面设置的应用程序:

import com.mylibrarypackage.SplashScreen; 
import com.mylibrarypackage.util.Constants; 

import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.graphics.Typeface; 

public class NCC extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     //Unique FacebookId 
     Constants.facebookId = "xxx"; 

     //Unique Twitter Keys 
     Constants.consumerKey = "xxx"; 
     Constants.consumerSecret = "xxx"; 

     //Flurry Key 
     Constants.flurryKey ="xxx"; 

     //Font name 
     Constants.fontName = "MuseoSans.ttf"; 
     Constants.boldfontName = "MuseoSans_500.ttf"; 



     Intent intent = new Intent(this, SplashScreen.class); 
     startActivity(intent); 
     finish(); 

     setContentView(R.layout.splashscreen); 
    } 
} 

图书馆是一个非常好的方式来构建通用的应用程序。

+0

完美。这就是我一直在寻找的!谢谢 :) – Roman 2013-05-01 13:29:34

1

“SDK”代表软件开发工具包。我非常怀疑你的客户真正理解他所谈论的内容,因为APP不能被“打包成SDK”。

编辑:

任何人都可以发送意图您出口活动,以便您需要什么大都。设置exported="true",添加一些检查,以便您的应用程序不会在发送破坏的意图时崩溃,并且您应该准备好。取决于你的种子,你可能想要处理被称为startActivityForResults()。但这些都不会让你的应用程序SDK

+0

需要采取一项活动并使其可在任何应用程序中启动。该活动与NDK,资产和“res”文件进行交互。 – Roman 2013-05-01 13:20:26

+0

看到编辑的答案,然后 – 2013-05-01 13:30:43

+0

我想他想包括他的应用程序的部分作为独立,以便用户不必安装这两个应用程序。就像[ACRA](http://acra.ch/)库... – tilpner 2013-05-01 13:32:48

0

将它作为library project

您将需要将其打包为一个独立的.jar文件。像this。 您可以将编译的代码打包到.jar中,并在库项目中拥有资源。这对你们来说都是一个很好的解决方案。

.apk文件实际上是一个.zip文件,就像一个.jar文件,因此您可以尝试使用打包的.apk文件中的资源。

相关问题