我有一个任务是创建一个具有一个按钮的Android应用程序,它将运行另一个Android应用程序。但我不是那个创建另一个应用程序的人,所以我为我的第一个Android应用程序做了一些研究。我发现我需要获取应用程序的包和类名来运行其他应用程序,因此我获得了第三方应用程序来获取应用程序的包和类名。这是代码,它可以工作:
public class MainActivity extends AppCompatActivity {
private String pckage_name = "com.sample.package";
private String clss_name = "com.sample.function.class";
private Button bt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt = (Button) findViewById(R.id.button);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
launchCall();
}
});
}
private void launchCall() {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setComponent(new ComponentName(pckage_name, clss_name));
try {
startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
}
}
当该应用程序打开时,它有我需要点击的按钮,这样它的功能就会运行,但我要做的就是只需点击一下按钮即可自动从我的应用程序运行。我不知道其他类名是否会用于使用我的应用程序自动运行按钮,或者是否错误?