创建的应用信息
用微信官网提供的获取的应用签名
build.gradle里面依赖的信息(官网的文档时注释掉的第一行,测试不行。后来看官网提供的例子用了with-mta没用without)
AndroidManifest.xml
目录结构(报名下创建wxapi目录,目录下创建WXEntryActivity)
WXEntryActivity代码
回调方法onReq(BaseReq baseReq)和onResp(BaseResp resp)全部收不到,没有任何反应,上帝啊!!!发生了什么?我到底哪里做错了?郁闷
同一个WXEntryActivity 用kotlin写的登录可以回调,支付不回调。改成java写后支付回调了,登录又不回调了。如果配置有问题,为啥又有能回调的情况。
Android微信登录为什么收不到回调onResp方法? 正确的方法如下:在之前的页面正确调起授权页面,并允许登陆后,进行以下工作. 按要求在wxaip子包下面新建wxentryactivity类,代码如下就可以了:public class WXEntryActivity extends Activity implements IWXAPIEventHandler { private static final String APP_ID="XXXX"; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); IWXAPI api=WXAPIFactory.createWXAPI(this,APP_ID,true); api.handleIntent(getIntent(),this); } @Override public void onReq(BaseReq baseReq) { Log.d("XWTXAPP","req"); } @Override public void onResp(BaseResp baseResp) { Log.d("XWTXAPP","resp"); } } 在AndroidManifest.xml下加入以下activity,这个主要的作用是生成一个透明的intent <activity android:name=".wxapi.WXEntryActivity" android:label="@string/app_name" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:taskAffinity="com.sjzrbjx.xiaowentingxie" android:launchMode="singleTop" android:exported="true"/> 微信开放平台的文档做的确实是差强人意,怀疑是小白文员做的,有时句子读都读不顺.
WXEntryActivity里api是IWXAPI接口的引用,onNewIntent是Activity的重写方法。 api.handleIntent(intent, this);写在onCreate里无效,接收不到回调。希望能够帮助到大家,别再遭罪了,至于写文档的,我画个圈圈诅咒你。 @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); setIntent(intent); api.handleIntent(intent, this); }