微信要求WXEntryActivity的路径必须为包名.wxapi.WXEntryActivity
有什么办法可以即满足上面的要求,又能够使WXEntryActivity文件位置自定义
使用activity-alias
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.wechat.share">
<uses-permission android:name="android.permission.INTERNET" />
<application>
<!-- 注:需要在主app的build.gradle中声明 ${weixin_package} -->
<activity
android:name=".WXEntryActivity"
android:launchMode="singleTask"
android:taskAffinity="${applicationId}"
android:theme="@style/NoTitleTranslucentTheme" />
<activity-alias
android:name="${weixin_package}.wxapi.WXEntryActivity"
android:exported="true"
android:targetActivity=".WXEntryActivity" />
</application>
</manifest>
然后记得在主app的build.gradle中申明变量
defaultConfig {
applicationId "com.my.app"
manifestPlaceholders = [
// 此处一定要设置成包名,不然无法满足微信对路径的要求
weixin_package: "com.my.app"
]
...
}