android从一个app点击启动或者唤醒另一个app

很多情况下我们需要从一个app点击启动或者唤醒另一个app,例如,天猫会启动支付,携带数据,跳到支付宝的相关页面进行支付。
其中关键的代码如下:

    PackageManager packageManager = MainActivity.this.getPackageManager();  // 当前Activity获得packageManager对象
    Intent intent=new Intent(); 
    try { 
        //下面字符串就是你另外一个应用的包的路径
        intent = packageManager.getLaunchIntentForPackage("cn.com.xxx.xxxxx"); 
    } catch (Exception e) { 
        Log.i(TAG, e.toString()); 
    } 
    startActivity(intent);

Intent其他用法
当android系统决定接收Intent对象的activity之后,该activity就会被启动,然后运行在它的onCreat()方法中,那么我们需要进行判断

Intent intent = getIntent(); // 获取android系统传入intent对象
String action = intent.getAction();
String scheme = intent.getScheme();
if(scheme.equals("http")){
    // 运行打开网页的代码
    String string = "打开网页"+it.getData().toString();
    textView.setText(string);
}else if(action.equals("android.intent.action.tel")){
    String number = "电话" + it.getData().toString();
    editText.setText(number);
}else if(action.equals("android.intent.action.EDIT")){
    // 运行编辑文件的程序代码 
}else if(action.equals("android.intent.action.VIEW")){
    //运行看文件程序
} 

在此manifest.xml的activity里写intenT_filter标注相应的scheme=“http”等

发布了31 篇原创文章 · 获赞 1 · 访问量 5万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章