-
Notifications
You must be signed in to change notification settings - Fork 93
Open
Description
为了多个 Android 的 flavor 配置,将 wxapi.WXEntryActivity 配置成别名 Activity, 但是 Dcloud 内部会触发 hasWXEntryActivity() 判断失败,导致拉起分享成功,却提示 Unable to send 的错误。
下面是 AndroidManifest.xml 中对 .wxapi.WXEntryActivity 的配置:
<activity
android:name="my.wxapi.WXEntryActivity"
android:label="@string/app_name"
android:exported="true"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="wxxxxxxxxxxx"/>
</intent-filter>
</activity>
<activity-alias
android:name="${applicationId}.wxapi.WXEntryActivity"
android:exported="true"
android:targetActivity="my.wxapi.WXEntryActivity" />查了下代码, 应该是 hasWXEntryActivity() 内部的 Class.forName(clsName) 处不能查找到 activity-alias 类导致的。
private boolean hasWXEntryActivity(Context context) {
String clsName = context.getPackageName() + ".wxapi.WXEntryActivity";
try {
Class.forName(clsName);
return true;
} catch (ClassNotFoundException e) {
return false;
}
}| private boolean hasWXEntryActivity(Context context) { |
Metadata
Metadata
Assignees
Labels
No labels