您的位置:首页 > 移动开发 > Android开发

Android 打包Activity 供第三方调用

2016-03-14 18:12 363 查看
目的:
编写自己的应用程序功能代码供其他人调用

案例:
编写xxxa 项目和xxxb 项目 xxxa项目供xxxb调用

xxxa项目关键代码:
publicclassXXXAActivityextendsActivity
{
[align=left] privateButtonbutton;[/align]
[align=left] @Override[/align]
protectedvoidonCreate(BundlesavedInstanceState)
{
[align=left] super.onCreate(savedInstanceState);[/align]
[align=left] setTitle("XXXA");[/align]
[align=left] setContentView(Res.findView(this,"xxxa_main","layout"));[/align]
button=(Button)
findViewById(Res.findView(this,"button","id"));
button.setOnClickListener(newOnClickListener()
{
[align=left] @Override[/align]
publicvoidonClick(Viewv)
{
[align=left] Toast.makeText(XXXAActivity.this,"你好",0).show();[/align]
[align=left] }[/align]
[align=left] });[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]其中Res代码如下:[/align]

publicclassRes
{
[align=left] [/align]
publicstaticint
findView(Contextcontext,StringviewName,Stringtype){
[align=left] returncontext.getResources().getIdentifier(viewName,type,context.getPackageName());[/align]

[align=left] }[/align]
[align=left]}[/align]

说明:系统自带方法 根据资源名称获取id信息
主要是为了之后在xxxb项目里面引用layout文件找不到的错误,如果直接写setContentView(R.layout.xxx) 会包如下错误



[align=left]爬过的坑。~~~~~~~[/align]

[align=left]然后直接打包xxxA 项目里面的 XXXAActivity为jar文件,然后放入xxxb项目里面 然后使用即可[/align]
[align=left]XXXBActivity[/align]

publicclassXXXBActivityextendsActivity
{

[align=left] @Override[/align]
protectedvoidonCreate(BundlesavedInstanceState)
{
[align=left] super.onCreate(savedInstanceState);[/align]
[align=left] setTitle("XXXB");[/align]
[align=left] setContentView(R.layout.xxxb_main);[/align]
findViewById(R.id.button).setOnClickListener(newOnClickListener()
{
[align=left] @Override[/align]
publicvoidonClick(Viewv)
{
startActivity(newIntent(XXXBActivity.this,
XXXAActivity.class));
[align=left] }[/align]
[align=left] });[/align]
[align=left] }[/align]

[align=left]}[/align]

[align=left]最后,记得把XXXAActivity 里面引用的 layout 布局文件拷贝到 b项目里面 。[/align]

[align=left]其他:[/align]
[align=left]也可以设置自己的项目为libary 然后其他项目引用该项目 不用打包jar文件[/align]

[align=left]之前发现还有一种方式,设置为项目为is libary 之后,会在bin文件下生成一个以项目名称为名的jar文件,发现可以通过拷贝此jar文件直接拿到其他项目中使用其中的资源文件和其他类。 大家可以试试,但是不知道这样使用是否合理。[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: