2626import com .wei .android .lib .fingerprintidentify .FingerprintIdentify ;
2727import com .wei .android .lib .fingerprintidentify .base .BaseFingerprint ;
2828import com .yyxx .wechatfp .BuildConfig ;
29+ import com .yyxx .wechatfp .Constant ;
2930import com .yyxx .wechatfp .Lang ;
3031import com .yyxx .wechatfp .R ;
3132import com .yyxx .wechatfp .util .Config ;
@@ -62,10 +63,14 @@ public class XposedAlipayPlugin {
6263 private Activity mCurrentActivity ;
6364
6465 private boolean mIsViewTreeObserverFirst ;
66+ private int mAlipayVersionCode ;
67+
6568 @ Keep
6669 public void main (final Context context , final XC_LoadPackage .LoadPackageParam lpparam ) {
6770 L .d ("Xposed plugin init version: " + BuildConfig .VERSION_NAME );
6871 try {
72+ mAlipayVersionCode = getAlipayVersionCode (context );
73+ L .d ("mAlipayVersionCode" , mAlipayVersionCode );
6974 Umeng .init (context );
7075 XposedLogNPEBugFixer .fix ();
7176 final PackageInfo packageInfo = context .getPackageManager ().getPackageInfo (lpparam .packageName , 0 );
@@ -87,7 +92,7 @@ protected void afterHookedMethod(MethodHookParam param) throws Throwable {
8792 Task .onMain (100 , () -> doSettingsMenuInject_10_1_38 (activity ));
8893 } else if (activityClzName .contains (".UserSettingActivity" )) {
8994 Task .onMain (100 , () -> doSettingsMenuInject (activity ));
90- } else if (activityClzName .contains (".MspContainerActivity" )
95+ } else if (activityClzName .contains (mAlipayVersionCode >= 230 ? ".PayPwdDialogActivity" : ".MspContainerActivity" )
9196 || activityClzName .contains (".FlyBirdWindowActivity" )) {
9297 L .d ("found" );
9398 final Config config = Config .from (activity );
@@ -286,6 +291,7 @@ public void showFingerPrintDialog(final Activity activity) {
286291 inputDigitPassword (activity , pwd );
287292 } catch (NullPointerException e ) {
288293 Toast .makeText (context , Lang .getString (R .id .toast_password_auto_enter_fail ), Toast .LENGTH_LONG ).show ();
294+ L .d ("inputDigitPassword NPE" , e );
289295 } catch (Exception e ) {
290296 Toast .makeText (context , Lang .getString (R .id .toast_password_auto_enter_fail ), Toast .LENGTH_LONG ).show ();
291297 L .e (e );
@@ -587,4 +593,15 @@ private View findConfirmPasswordBtn(Activity activity) {
587593 }
588594 return null ;
589595 }
596+
597+ private static int getAlipayVersionCode (Context context ) {
598+ try {
599+ PackageInfo packageInfo = context .getPackageManager ().getPackageInfo (Constant .PACKAGE_NAME_ALIPAY , 0 );
600+ int versionCode = packageInfo .versionCode ;
601+ return versionCode ;
602+ } catch (Exception e ) {
603+ L .e (e );
604+ }
605+ return 0 ;
606+ }
590607}
0 commit comments