안녕하세요.
아래와 같은 activity가 있습니다.
package = android.book.helloandroid 입니다.

         <activity android:name=".video.VideoActivity"  android:label="AudioVideo/Video"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
            <Intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="gtko.android.category.HELLOANDROID" />
            </Intent-filter>
        </activity>


Activity 자체는 단순해서 아래와 같습니다.

public class VideoActivity extends Activity {
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView( R.layout.video);
        VideoView video = (VideoView)findViewById(R.id.video);
        ....
    }

그런데 PackageManager 에서 이 activity가 찾아지질 않습니다.

       Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
        // mainIntent.setPackage("android.book.helloandroid");
        mainIntent.addCategory("gtko.android.category.HELLOANDROID");
        PackageManager pm = getPackageManager();
        List<ResolveInfo> list = pm.queryIntentActivities(mainIntent, 0);//PackageManager.MATCH_DEFAULT_ONLY);

list에는 위의 VideoActivity 만 쏙 빠져서 나머지 Activity들은 잘 검색이 됩니다.
왜 이럴까요?
답변 주신 분들 감사드립니다. ^^
profile
Go for it. Go for 10-thousand.