从Android应用程序启动活动意图

时间:2014-02-13 07:23:09

标签: android-activity android

我有一个活动,其中包含我需要为整个应用运行的处理程序。我需要做的是在主活动启动时调用处理程序活动,然后在处理程序活动中执行函数时,处理程序活动应该将意图启动到第二个活动。

这是我的代码:

public class MyApp extends Application {

    public void onCreate() {
        h = new Handler() {
    @Override
    public void handleMessage(Message msg) {
        Bundle b = msg.getData();
                Log.d("tag",b.getString("msg"));

                //THIS IS WHERE I WANT TO OPEN SECONDACTIVITY
        }
     };
   }
}

MyApp是一个全局Application类,用于在整个应用程序中运行套接字连接。只要应用程序正在运行,它就需要活着。

4 个答案:

答案 0 :(得分:1)

简单

Intent intent = new Intent(YourActivityClass.this, SECONDACTIVITY.class);
startActivity(intent);

答案 1 :(得分:1)

   public class MyApp extends Application {

        public void onCreate() {
            h = new Handler() {
            @Override
            public void handleMessage(Message msg) {
                Bundle b = msg.getData();


                Log.d("tag",b.getString("msg"));
                Intent myIntent = new Intent(this, YourSecondActivity.class);
                startActivity(myIntent);
            }
        };


        }
    }

同时将其添加到您的清单文件

 <activity android:name=".YourSecondActivity" />

答案 2 :(得分:0)

首先,您在AndroidManifest.xml LIKE中添加活动信息

<activity
    android:name="com.assignment.matchnumber.PlayActivity"
    android:label="@string/app_name" >
    <intent-filter>
        <action android:name="com.assignment.matchnumber.PLAY" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

然后将其放入您想要的MyApp活动中。

Intent openPlayActivity = new Intent("com.assignment.matchnumber.PLAY");
startActivity(openPlayActivity);

感谢 --Sajib

答案 3 :(得分:0)

嗯,事实证明我需要添加:i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Intent i = new Intent(MyApp.this, SecondActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);

因为从MainActivity,我调用了MyApp(一个类来维护全局应用程序状态)。然后在MyApp中,我处理一些事情,然后我调用SecondActivity。