一个App调用另一个App的Activity的方法

上一篇我们知道了一个App调用另一个App的Activity,但是如果我们要调用另一个App的某个Activity中的方法怎么办?

   我的思路是这样的:

     既然我们知道一个App可以调用另一个App的Activity,那我们为什么不在调用的时候,进行传参,根据参数的不同来调用对应的方法,

通过这样一个“曲线救国”的方式就可以完成此功能了!

关键代码如下:

  FristActivity的代码:
Intent intent = new Intent();
				intent.putExtra("userinfo", userInfoText.getText().toString());
				ComponentName  componetName = new ComponentName("com.niuba.second","com.niuba.second.SecondActivity");
				intent.setComponent(componetName);
				startActivity(intent);
SecondActivity的代码:

public class SecondActivity extends Activity {
  private EditText userinfo;
  private LinearLayout  linearLayout = null;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		userinfo = (EditText) findViewById(R.id.userinfo);
		linearLayout = (LinearLayout) findViewById(R.id.linearLayout);
		String userinfoStr = getIntent().getStringExtra("userinfo");
		userinfoStr = userinfoStr==null?"":userinfoStr.toUpperCase();
		if(userinfoStr.equals("A")){
			setBackground();
		}else{
			setBackground2();
		}
		userinfo.setText(userinfoStr);
	}

	/**
	 * 
	 * setBackground(设置背景图片1)
	 * @Exception 异常对象
	 * @since  CodingExample Ver(编码范例查看) 1.1
	 */
	public void setBackground(){
		linearLayout.setBackgroundResource(R.drawable.picture1);
	}
	
	/**
	 * 
	 * setBackground(设置背景图片2)
	 * @Exception 异常对象
	 * @since  CodingExample Ver(编码范例查看) 1.1
	 */
	public void setBackground2(){
		linearLayout.setBackgroundResource(R.drawable.picture2);
	}

项目下载地址:http://download.csdn.net/detail/niuba123456/6973645
我的QQ群:373643359,欢迎加入

一个App调用另一个App的Activity的方法,布布扣,bubuko.com

一个App调用另一个App的Activity的方法

上一篇:【安卓笔记】Handler+Thread使用浅析


下一篇:Android源码研究的准备工作 -- 下载android源码到Ubuntu上(亲自调试,不能过分迷信GOOGLE文档)