2013-08-14 3 views
0

У меня есть приложение для Android и проверено как библиотека, пусть это будет Mainapp. Теперь я создал два отдельных приложения, используя эту библиотеку, а именно. subapp1 и subapp2. Индивидуальные приложения работают нормально. У меня есть активность входа в пакет библиотеки. При успешном входе пользователь будет перенаправлен на активность панели. Написанная просто в loginactivity странице библиотеки пакетаПроект библиотеки Android custom customirectirect

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

Теперь мне нужно указать, к какой деятельности пользователь будет перенаправлен на основе суб приложения. Так как я могу справиться с этим, не реплицируя страницы. Благодарю.

ответ

0

вы можете указать имя класса и пакета в качестве аргумента и начать новый замысел:

Intent sccuess = new Intent(); 
sccuess.setClassName(packageName, className); 
startActivity(sccuess); 
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 
{ 
// ... 
} 
0

В Mainifest вашей библиотеки, вам следует определить, как этот

<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

Смежные вопросы