Android中两个NativeActivity的切换实现方案问询
实现两个独立NativeActivity的切换方案
需求:在Android应用中实现两个独立NativeActivity的切换。已知需在<application>标签下配置多个<activity>标签,常规做法是通过Intent指定目标类启动,但两个NativeActivity的android:name均为android.app.NativeActivity,仅关联不同的.so文件。
当前使用的AndroidManifest.xml配置:
<application android:debuggable="true" android:hasCode="false" android:label="cnfgtest" tools:replace="android:icon,android:theme,android:allowBackup,label" android:icon="@mipmap/icon"> <activity android:configChanges="keyboardHidden|orientation" android:label="app_i_want_to_launch" android:name="android.app.NativeActivity"> <meta-data android:name="android.app.lib_name" android:value="app_i_want_to_launch"/> <intent-filter> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:configChanges="keyboardHidden|orientation" android:label="app_that_currently_launches" android:name="android.app.NativeActivity"> <meta-data android:name="android.app.lib_name" android:value="app_that_currently_launches"/> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application>
限制条件:当前构建环境无法编译额外Java代码,需仅基于NativeActivity解决。
解决方案:单独编译自定义NativeActivity子类,生成classes.dex文件加入项目,通过不同的类名来区分两个NativeActivity(参考了@dalmif的部分方案)。
内容的提问来源于stack exchange,提问作者Charles Lohr
相关产品推荐
相关产品推荐

