閑來無事,做了個實驗。大致思路:A、B、C是三個較為龐大的工程。A工程(開源)需要用到B工程(開源),而又希望在B工程(開源)中引用C工程(開源)。也就是A是真個項目框架,B是其中一個模塊,而在B中又希望集成C開源工程。
先看效果圖:




在開始之前,請先參照[http://blog.csdn.net/songshimvp1/article/details/50015887](http://blog.csdn.net/songshimvp1/article/details/50015887)——[Android 中一個工程引用另一個工程](http://blog.csdn.net/songshimvp1/article/details/50015887)
完成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](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一樣,還是很讓人愉快的。
- 前言
- Java內部類
- 從一個View向一個Activity跳轉
- Android 與 SQLite
- Android工程A依賴B,B依賴C
- Android重要控件概覽(上)
- Installation error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED
- Android布局概覽
- 動態引用APK文件
- Android重要控件概覽(中)
- Android重要控件概覽(下)
- Gallery和ImageSwitcher
- Android之Toast
- Android之Dialog
- Android之Notification
- Android之Menu
- Android Menu中android:showAsAction屬性
- Android SharedPreferences存儲數據的使用方法
- Android手勢識別之GestureDetector
- 不同APP通過SharedPreferences傳遞數據(共享數據)
- 一個自定義的Topbar模板
- 關于Activity回收造成View選中不對應的問題
- Android之Fragment靜態加載