Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android:android Intent and IntentFilter

android:android Intent and IntentFilter

編輯:關於Android編程

 

1,intentfilter說明:

如果說是將一個activity有其他應用打開,或者是在webView 或者 bybird app中調用我們自己的activity,
那麼就可以使用intentfilter來過濾我們自己需要的activity;

*uri參數說明 Java Code:

final Uri uri =  Uri.parse(intbird://com.intbird.soft/testing/tested?name='Test');

        TextView textView = (TextView)findViewById(R.id.textView);
        textView.setText(uri.getScheme() + 
 //intbird
                        + uri.getPort() + 
  //-1

                        + uri.getAuthority() + 
 //com.intbird.soft
                        + uri.getHost() + 
  //com.intbird.soft

                        + uri.getPath() + 
 // /testing/tested
                        + uri.getPathSegments() + 
 // [tesing,tested]

                        + uri.getQuery()+
); // name='Text'
public void onClick(View v) {

                Intent intent = new Intent();
                intent.setAction(android.intent.action.VIEW);
                intent.setData(uri);

                PackageManager packageManager = getPackageManager();
                List activities = packageManager.queryIntentActivities(intent,0);
                boolean isIntentSafe  = activities.size() > 0;
                if(isIntentSafe){
                    startActivity(intent);
                }else{
                    Toast.makeText(MainActivity.this, 匹配None, Toast.LENGTH_SHORT).show();
                }
            }

XML Code:

NOTE : 必須有category標簽


            
                
                
                
            
        

2,結合網頁調用加深理解

uri:
final Uri urihttp = Uri.parse(“https://www.baidu.com/s?wd=intbird“);
//schma : http
//host : www.baidu.com
//path : /s
//query : wd= intbird

XML


            
                
                
                
            
        

匹配scheme,匹配host多個,彈出 Intent Chooser
這裡寫圖片描述

3,同理,我們如果有多個activity;

if 兩個都一樣:


            
                
                
                
            
        
        
            
                
                
                
            
        

So:
這裡寫圖片描述

but: add path [ android:path=”/testing” ] to one,startActivity directly

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved