Android库项目自定义重定向

时间:2013-08-14 11:46:55

标签: android

我有一个Android应用程序并检查为库让它成为Mainapp。现在我使用该库创建了两个单独的应用程序。 subapp1和subapp2。个别应用程序正常运行。我在库包中登录了活动。成功登录后,用户将被重定向到仪表板活动。 只写在库包的loginactivity页面

    Intent i = new Intent();
        i.setClass(getApplicationContext(), UserhomeActivity.class);
        startActivity(i);

现在我需要根据子应用指定用户将被重定向到哪个活动。所以我如何在不复制页面的情况下管理它。感谢。

3 个答案:

答案 0 :(得分:0)

您可以提供类和包名称作为参数并启动新意图:

Intent sccuess = new Intent();
sccuess.setClassName(packageName, className);
startActivity(sccuess);

答案 1 :(得分:0)

我不确定我是否理解正确但如果我理解你是正确的,那么您需要从SecureActivity派生您的活动,该用户应该登录以访问那里。

SecureActivity扩展课程后,您可以使用onResume()方法进行检查。

以下是一个例子:

public class SecureActivity extends Activity
{
 @Override
 public void onResume()
 {
   // Check if user logged in or not.
 }
}

public class YourActivity extends SecureActivity
{
 // ...
}

答案 2 :(得分:0)

在你的图书馆的主要内容中,你应该像那样定义

<activity
    android:name="com.gmail.app.activities.A_Activity"
    android:label="@string/app_name"
    android:screenOrientation="portrait"
    android:theme="@style/NoActionBar" > 
    <intent-filter>
        <action android:name="com.gmail.app.A.Fire_Activity" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

<activity
    android:name="com.gmail.app.activities.B_Activity"
    android:label="@string/app_name"
    android:screenOrientation="portrait"
    android:theme="@style/NoActionBar" > 
    <intent-filter>
        <action android:name="com.gmail.app.B.Fire_Activity" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>


在库代码中触发意图:

    Intent i = new Intent(_context.getPackageName() + ".Fire_Activity"); 
    //Action will be like com.gmail.app.A.Fire_Activity or com.gmail.app.B.Fire_Activity

    startActivity(i);


PS:
您的子应用程序具有包名称:

com.gmail.app.A com.gmail.app.B