我正在尝试从我的主要活动开始设置电子邮件帐户的活动。它没有工作,让我疯了。我所拥有的是:
button.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
EditText username = (EditText) findViewById(R.id.editText1);
EditText password = (EditText) findViewById(R.id.editText2);
ComponentName cname = new ComponentName("com.android.email",
"com.android.email.activity.setup.AccountSetupBasics");
Intent intent = new Intent("android.intent.action.MAIN");
intent.putExtra("com.android.email.AccountSetupBasics.username", username.getText().toString());
intent.putExtra("com.android.email.AccountSetupBasics.password", password.getText().toString());
intent.putExtra("com.android.email.extra.eas_flow", true);
intent.setComponent(cname);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
});
清单是:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.test.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
我总是得到这个错误:
android.content.ActivityNotFoundException:无法找到显式活动类{com.android.email/com.android.email.activity.setup.AccountSetupBasics};你有没有在AndroidManifest.xml中声明这个活动?
我是新手,谁能告诉我如何解决这个错误?
非常感谢任何回复。
答案 0 :(得分:1)
如果导出了其他活动,则只能启动其他活动。检查com.android.email.activity.setup.AccountSetupBasics
是否正确。并且您应该始终try/catch
startActivity()
,因为{{1}}可以抛出异常,原因更多,如果您将其置于未捕获状态,您的应用将崩溃
答案 1 :(得分:0)
button.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
EditText username = (EditText) findViewById(R.id.editText1);
EditText password = (EditText) findViewById(R.id.editText2);
ComponentName cname = new ComponentName("com.android.email",
"com.android.email.activity.setup.AccountSetupBasics");
Intent intent = new Intent(currentActivity.this, targetActvity.class);
intent.putExtra("com.android.email.AccountSetupBasics.username", username.getText().toString());
intent.putExtra("com.android.email.AccountSetupBasics.password", password.getText().toString());
intent.putExtra("com.android.email.extra.eas_flow", true);
intent.setComponent(cname);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
});