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

Android工程A依赖B,B依赖C

2015-11-26 17:31 776 查看
       闲来无事,做了个实验。大致思路:A、B、C是三个较为庞大的工程。A工程(开源)需要用到B工程(开源),而又希望在B工程(开源)中引用C工程(开源)。也就是A是真个项目框架,B是其中一个模块,而在B中又希望集成C开源工程。

先看效果图:


                             



                                                                    


       在开始之前,请先参照http://blog.csdn.net/songshimvp1/article/details/50015887——Android
中一个工程引用另一个工程

完成B和C的连接。

       C工程很简单,直接创建CMainActivity,然后改一下textView中的文字即可。

       B工程,创建BMainActivity,然后设置textView和button。再设置BMainActivity主文件:

public class BMainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_b_main);

findViewById(R.id.buttonBC).setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent cIntent=new Intent(BMainActivity.this,CMainActivity.class);
startActivity(cIntent);
}
});
}

........
       参照上述网址http://blog.csdn.net/songshimvp1/article/details/50015887连通B和C。

       接下来是A。仍然是直接创建AMainActivity,然后设置textView和button。再设置AMainActivity主文件:

public class AMainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_amain);

findViewById(R.id.buttonAB).setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent bIntent=new Intent(AMainActivity.this,BMainActivity.class);
startActivity(bIntent);
}
});
}
..........


       设置依赖项时,是单层依赖,A中不去设置C,单层设置,单层依赖



        设置清单文件时,A中要包含B和C中的所有清单文件:



       在工程中如果出现错误,可能是资源id出现冲突,所以最好是每个项目的资源ID要个性化单独设置。还要记得clean这一招。总之,尝试一下吧,快速集成开源项目像上面这个demo一样,还是很让人愉快的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android