【发布时间】:2017-06-09 21:22:52
【问题描述】:
我想使用一个函数来启动一个新的活动,为此我使用一个最终的字符串来显示我想要打开的活动的路径。
然后我遇到了这个问题,我不知道为什么:
原因:android.content.ActivityNotFoundException:没有活动 发现处理 Intent { act=yoavjlevy.arko.MapsActivity }
这是我的类,我想用函数“onSuccess”开始其他活动:
public class Login extends FragmentActivity {
CallbackManager callbackManager;
LoginButton login_button;
private static final String HOME_ACTIVITIES = "yoavjlevy.arko.MapsActivity";
private static final int HOME_ACTIVITIES_REQUEST_CODE = 10;
private AccessToken accessToken;
private AccessTokenTracker accessTokenTracker;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
setContentView(R.layout.activity_login);
login_button= (LoginButton) findViewById(R.id.login_button);
callbackManager = CallbackManager.Factory.create();
login_button.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.d("LOGIN_SUCCESS", "Success");
login_button.setVisibility(View.INVISIBLE); //<- IMPORTANT
Intent intent = new Intent(HOME_ACTIVITIES);
startActivity(intent);
finish();//<- IMPORTANT
}
@Override
public void onCancel() {
Log.d("LOGIN_CANCEL", "Cancel");
}
@Override
public void onError(FacebookException error) {
Log.d("LOGIN_ERROR", "Error");
}
});
我的 AndroidManiFest:
<activity
android:name=".MapsActivity"
android:label="@string/title_activity_maps">
<intent-filter>
<action android:name="yoavjlevy.arko.MapsActivity" />
</intent-filter>
</activity>
【问题讨论】:
-
您的意图定义错误。应该是这样 Intent intent = new Intent(this, MapsActivity.class);
-
@fn5341 但如果我这样做,它会给我一个错误:“错误:(41, 33) 错误:没有找到合适的构造函数用于 Intent(
>,Class) 构造函数 Intent.Intent(String,Uri) 不适用(参数不匹配; > 无法转换为字符串)构造函数 Intent.Intent(Context,Class>) 不适用(参数不匹配; > 无法转换为 Context)"
标签: java android android-studio android-intent