android乱七八糟

来源:互联网 发布:windows 进程通信 编辑:程序博客网 时间:2024/05/16 05:24

//1.获取堆栈中最上面activity名称:

public String getTopActivityName(){ActivityManager am=(ActivityManager)getSystemService(ACTIVITY_SERVICE);ComponentName cn=am.getRunningTasks(1).get(0).topActivity;return cn.getClassName();}

2.两个应用之间跳转。
  第一种方式:
首页activity加个过滤器
     <intent-filter>  
                 
             <action android:name=""xx.xx.xxx..myaction"/>  
             <category android:name="android.intent.category.DEFAULT" />  
       </intent-filter>
   跳转activity中:
    try {
Intent intent = new Intent("xx.xx.xxx.myaction");
startActivity(intent);
} catch (Exception e) {
Toast.makeText(MainActivity.this, "该界面不存在!",
Toast.LENGTH_LONG).show();
}
第二种方式:
无需添加过滤器。
只需:
ComponentName componetName = new ComponentName(  
           // 这个是另外一个应用程序的包名  
                  ""xx.xx.xxx.",  
                   // 这个参数是要启动的Activity  
                   ""xx.xx.xxx..LoadingActivity");  
           Intent intent = new Intent();  
           intent.setComponent(componetName);  
          startActivity(intent); 

第三种方式:

PackageManager pm=getPackageManager();
Intent intent=new Intent();
   intent=pm.getLaunchIntentForPackage("xx.xxx.xxx);//包名
   startActivity(intent);

0 0