牛骨文教育服务平台(让学习变的简单)

闲来无事,做了个实验。大致思路: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一样,还是很让人愉快的。