2012-04-19 11 views
2

私のアプリケーションでボタンをクリックすると、別のパッケージからアクティビティを開始します。他のパッケージで宣言されているアクティビティを見つけることができません

これは私の意図です:

final Intent myIntent = new Intent(getApplicationContext(), com.facebook.android.Places.class) 

、これが私のマニフェストです:

<activity android:name=".com.facebook.android.Places" 
      > </activity> 

しかし、私はunable to find explicit activity com.mypackage\com.facebook.android.Placesを取得しています。

別のパッケージからアクティビティを開始することはできませんか?

答えて

2

別のライブラリプロジェクトから活動を開始しないでください:

はそれの独自のサブクラスを作成します。

public class MyPlaces extends com.facebook.android.Places { 

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     ... 
    } 
} 

は、今すぐあなたのマニフェストに新しい活動を宣言します。

<activity android:name=".MyPlaces"> </activity> 
+0

サブクラスを作成し、その中の場所から同じコードをコピーします。何も違うことをしたくないのですか? – ghostrider

+0

ok ...私のコメントを編集しました...私があなたを助けることを願っています:) – kyp

+0

ライブラリプロジェクトを使用したいのですか、別のアプリケーションのアクティビティを開始しますか? – kyp

2
<activity android:name=".com.facebook.android.Places"> </activity> 

パッケージ内のPlacesアクティビティはcom.facebook.androidですか?またはcom.mypackage.com.facebook.androidにありますか?

場所クラスは、あなたがして名前を開始するために持っていけない

<activity android:name="com.facebook.android.Places"> </activity> 

にマニフェストエントリを変更し、com.facebook.androidにある場合は「」

関連する問題