groovy dependencies { } <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <application> <activity android:name="com.tencent.mm.opensdk.openapi.IntentHandlerActivity" android:exported="false" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <activity android:name="YOUR_PACKAGE_NAME.wxapi.WXPayEntryActivity" android:exported="true" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <meta-data android:name="com.tencent.mm.sdk.openapi.WXAPIFactory.APPID" android:value="YOUR_WECHAT_APPID" /> </application> public class MainActivity extends AppCompatActivity { private static final String APP_ID = "YOUR_WECHAT_APPID"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); IWXAPI api = WXAPIFactory.createWXAPI(this, APP_ID, true); api.registerApp(APP_ID); } } public class LoginActivity extends AppCompatActivity { private static final int REQUEST_CODE_LOGIN_WECHAT = 1001; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); api = WXAPIFactory.createWXAPI(this, APP_ID, true); api.registerApp(APP_ID); findViewById(R.id.btn_login_wechat).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { SendAuth.Req req = new SendAuth.Req(); api.sendReq(req); } }); } @Override protected void onResume() { super.onResume(); handleWechatLoginCallback(getIntent()); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); handleWechatLoginCallback(intent); } private void handleWechatLoginCallback(Intent intent) { if (intent != null && intent.hasExtra("_wxapi_sendauth_resp")) { SendAuth.Resp resp = new SendAuth.Resp(intent.getBundleExtra("_wxapi_sendauth_resp")); if (resp.errCode == BaseResp.ErrCode.ERR_OK) { } else { } } } private void showToast(String message) { Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); } } public class ShareActivity extends AppCompatActivity { private static final int REQUEST_CODE_SHARE_WECHAT = 1002; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_share); api = WXAPIFactory.createWXAPI(this, APP_ID, true); api.registerApp(APP_ID); findViewById(R.id.btn_share_wechat).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { WXTextObject textObj = new WXTextObject(); WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = textObj; SendMessageToWX.Req req = new SendMessageToWX.Req(); req.message = msg; api.sendReq(req); } }); } @Override protected void onResume() { super.onResume(); handleWechatShareCallback(getIntent()); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); handleWechatShareCallback(intent); } private void handleWechatShareCallback(Intent intent) { if (intent != null && intent.hasExtra("_wxapi_sendmessagetowx_req")) { int result = intent.getIntExtra("_wxapi_baseresp_errcode", BaseResp.ErrCode.ERR_OK); if (result == BaseResp.ErrCode.ERR_OK) { } else { } } } private String buildTransaction(final String type) { return type + System.currentTimeMillis(); } private void showToast(String message) { Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); } } public class PayActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_pay); api = WXAPIFactory.createWXAPI(this, APP_ID, true); api.registerApp(APP_ID); findViewById(R.id.btn_pay_wechat).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { PayReq req = new PayReq(); api.sendReq(req); } }); } @Override protected void onResume() { super.onResume(); handleWechatPayCallback(getIntent()); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); handleWechatPayCallback(intent); } private void handleWechatPayCallback(Intent intent) { if (intent != null && intent.hasExtra("_wxapi_payresp")) { PayResp resp = new PayResp(intent.getBundleExtra("_wxapi_payresp")); if (resp.errCode == BaseResp.ErrCode.ERR_OK) { } else if (resp.errCode == BaseResp.ErrCode.ERR_USER_CANCEL) { } else { } } } private void showToast(String message) { Toast.makeText(this, message, Toast.LENGTH_SHORT).show(); } }


上一篇:
下一篇:
切换中文