ComponentName顾名思义是组件的名称,可以启动其他应用的Activity、Service.
ComponentName chatActivity =new ComponentName(param1,param2);
param1:Activity、Service所在应用的包名
param2:Activity、Service的包名+类名
要启用的APP的AndroidManifest.xml部分代码如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.cjx.factorymenu"
android:sharedUserId="android.uid.system"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="18"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@drawable/factory_menu"
android:label="@string/app_name"
android:requiredForAllUsers="true"
android:supportsRtl="false"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" >
<activity
android:name=".FactoryMenuActivity"
通过AndroidManifest.xml 编写如下
Intent intent = new Intent();
ComponentName mComponentName = new ComponentName("com.cjx.factorymenu",
"com.cjx.factorymenu.FactoryMenuActivity");
intent.setComponent(mComponentName);
startActivity(intent);
如果在启用一些APP过程中还想添加一些参数可以这样做
Intent intent = new Intent();
int keyCode=10;
ComponentName mComponentName = new ComponentName("com.cjx.factorymenu",
"com.cjx.factorymenu.FactoryMenuActivity");
intent.setComponent(mComponentName);
intent.putExtra("keyCode",keyCode);
startActivity(intent);
在启用的app 的activity里获取如下:
public class FactoryMenuActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
int keyCode;
keyCode = getIntent().getIntExtra("keyCode", -1);
Log.d("cjx","keyCode="+keyCode);
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/38699.html