Android 如何从另一个包开始新活动?
我搜索了一下,找到了很多解决方案,但没有一个适合我 我想从另一个包开始新的活动。我用这个Android 如何从另一个包开始新活动?,android,android-intent,android-manifest,Android,Android Intent,Android Manifest,我搜索了一下,找到了很多解决方案,但没有一个适合我 我想从另一个包开始新的活动。我用这个 Intent myIntent = new Intent(this,my_class.class); startActivityForResult(myIntent ,6161); 它给出了以下错误: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xx.yy.pack/com.xx.yy.pac
Intent myIntent = new Intent(this,my_class.class);
startActivityForResult(myIntent ,6161);
它给出了以下错误:
java.lang.RuntimeException: Unable to start activity
ComponentInfo{com.xx.yy.pack/com.xx.yy.pack.my_class}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2363)
at android.app.ActivityThread.access$900(ActivityThread.java:161)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5356)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at java.io.File.fixSlashes(File.java:185)
at java.io.File.<init>(File.java:134)
at com.wub.cropimage.CropImage.a(Unknown Source)
at com.wub.cropimage.CropImage.onCreate(Unknown Source)
at android.app.Activity.performCreate(Activity.java:5426)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269)
... 11 more
java.lang.RuntimeException:无法启动活动
ComponentInfo{com.xx.yy.pack/com.xx.yy.pack.my_class}:java.lang.NullPointerException
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2363)
在android.app.ActivityThread.access$900(ActivityThread.java:161)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:157)
位于android.app.ActivityThread.main(ActivityThread.java:5356)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:515)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:1265)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
在dalvik.system.NativeStart.main(本机方法)
原因:java.lang.NullPointerException
位于java.io.File.fixSlashes(File.java:185)
在java.io.File.(File.java:134)
在com.wub.cropimage.cropimage.a(未知来源)
位于com.wub.cropimage.cropimage.onCreate(未知源)
位于android.app.Activity.performCreate(Activity.java:5426)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269)上
... 还有11个
我的舱单在这里:
<activity
android:name="com.xx.yy.pack.my_class" >
<intent-filter>
<action android:name="myintent.intent.action.Launch" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
提前谢谢就这么做吧
Intent myIntent = new Intent(this,my_class.class);
startActivity(myIntent);
在AndroidManifest.xml中执行此操作
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="Activity1"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.example.Activity2"></activity>
</application>
注意:-活动1是您的第一项活动,活动2是您的第二项活动
这是否有助于您从另一个程序包(应用程序)调用活动:
您还没有向我们展示包含
startActivity
的线路,实际上它在某些手机上会出错。还有一些手机可以使用。您是否尝试过使用IntentFilter
?是的,它会给出相同的错误。不幸的是,我该如何使用它呢?可能我在使用IntentFilterm时出错了我的主要活动是Activity1?我的第二个活动是Activity2?我的意思是哪一个是我的课堂活动?请回答我好吗?活动2是你的课堂活动。主要区别在于我回答时的意图过滤器。
Intent myIntent = new Intent(Intent.ACTION_MAIN);
PackageManager manager = getApplicationContext().getPackageManager();
myIntent = manager.getLaunchIntentForPackage(YourPackageName);
myIntent.addCategory(Intent.CATEGORY_LAUNCHER);
startActivityForResult(myIntent ,6161);