對接過微信分享的小夥伴應該很清楚,就是須要在包名的wxapi目錄下建立一個WXEntryActivity類,而後實現IWXAPIEventHandler接口,再在onResp方法寫具體業務邏輯。android
就算是對接了第三方分享框架,不少也須要建立WXEntryActivity類,而後繼承某個類等。git
這樣增長了對接的成本,有一種技巧,能夠不用寫WXEntryActivity類,就是使用activity-alias作一層轉發,看wechat工程full風味下的AndroidManifest文件:github
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ysbing.yshare_wechat">
<application>
<meta-data android:name="YSHARE_WECHAT_APPID" android:value="${YSHARE_WECHAT_APPID}" />
<activity android:name=".YWXEntryActivity" android:configChanges="orientation|keyboardHidden" android:screenOrientation="behind" android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity-alias android:name="${applicationId}.wxapi.WXEntryActivity" android:exported="true" android:targetActivity=".YWXEntryActivity" />
</application>
</manifest>
複製代碼
我把微信要訪問的WXEntryActivity類轉發到了YWXEntryActivity,就能夠不用在對應包名下寫這個類了,activity-alias的介紹點着api
若是有微信登錄的需求,就須要寫WXEntryActivity了,再繼承YWXEntryActivity,將登錄邏輯寫進去便可,在AndroidManifest配置activity-alias你的WXEntryActivity便可。微信