调用另一个应用程序的特定 activity。 Android
Call a specific activity of another application. Android
我对 android 比较陌生,目前我正在从事一个复杂的项目,我需要完成一项要求。我有点卡在这里。
这是游戏内 activity 试用结束后供访客用户使用的内容。
public class GuestUserActivity extends Activity {
public Button mMenuButton;
public Button mRegisterButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.guest_user_screen);
mMenuButton = ( Button ) findViewById( R.id.Menu);
mRegisterButton = ( Button ) findViewById( R.id.Register);
mMenuButton.setOnClickListener(m_MenuClicked);
mRegisterButton.setOnClickListener(m_RegisterClicked);
}
public View.OnClickListener m_MenuClicked = new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent ( getBaseContext(), MainMenuActivity.class);
startActivity(intent);
}
};
public View.OnClickListener m_RegisterClicked = new View.OnClickListener() {
public void onClick(View v) {
//What to write here?
}
};
}
对应布局:
所以当用户点击注册按钮时。我想启动另一个应用程序的特定 activity。
所以如果我理解正确的话,你想启动一个与你的应用程序不同的应用程序?如果是这样,请尝试:
Intent i;
PackageManager manager = getPackageManager();
try {
i = manager.getLaunchIntentForPackage("app package name");
if (i == null)
throw new PackageManager.NameNotFoundException();
i.addCategory(Intent.CATEGORY_LAUNCHER);
startActivity(i);
} catch (PackageManager.NameNotFoundException e) {
}
您可以找到更多详细信息here
Intent launchIntent = new Intent(Intent.ACTION_MAIN);
launchIntent.addCategory(Intent.CATEGORY_LAUNCHER);
ComponentName cp = new ComponentName("Your App Packge Name that Contains Register Activity", "Register Activity Name");
launchIntent.setComponent(cp);
startActivity(launchIntent);
希望对您有所帮助。
我对 android 比较陌生,目前我正在从事一个复杂的项目,我需要完成一项要求。我有点卡在这里。
这是游戏内 activity 试用结束后供访客用户使用的内容。
public class GuestUserActivity extends Activity {
public Button mMenuButton;
public Button mRegisterButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.guest_user_screen);
mMenuButton = ( Button ) findViewById( R.id.Menu);
mRegisterButton = ( Button ) findViewById( R.id.Register);
mMenuButton.setOnClickListener(m_MenuClicked);
mRegisterButton.setOnClickListener(m_RegisterClicked);
}
public View.OnClickListener m_MenuClicked = new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent ( getBaseContext(), MainMenuActivity.class);
startActivity(intent);
}
};
public View.OnClickListener m_RegisterClicked = new View.OnClickListener() {
public void onClick(View v) {
//What to write here?
}
};
}
对应布局:
所以当用户点击注册按钮时。我想启动另一个应用程序的特定 activity。
所以如果我理解正确的话,你想启动一个与你的应用程序不同的应用程序?如果是这样,请尝试:
Intent i;
PackageManager manager = getPackageManager();
try {
i = manager.getLaunchIntentForPackage("app package name");
if (i == null)
throw new PackageManager.NameNotFoundException();
i.addCategory(Intent.CATEGORY_LAUNCHER);
startActivity(i);
} catch (PackageManager.NameNotFoundException e) {
}
您可以找到更多详细信息here
Intent launchIntent = new Intent(Intent.ACTION_MAIN);
launchIntent.addCategory(Intent.CATEGORY_LAUNCHER);
ComponentName cp = new ComponentName("Your App Packge Name that Contains Register Activity", "Register Activity Name");
launchIntent.setComponent(cp);
startActivity(launchIntent);
希望对您有所帮助。