美文网首页
逆向分析微信小程序

逆向分析微信小程序

作者: 夬大爷 | 来源:发表于2017-01-10 18:11 被阅读0次

    微信调用openWeAppDestop 方法 进入小程序

    先是进入应用列表WAMainListViewController

    搜索京东进入MMWebViewController

    看了源代码

    发现小程序是基于YYUIWebView的也就是内嵌了网页应用,再加上了WebViewJSLogicImpl.sendEventToJSBridge js跟OC互相调用的方法,搞了半天也就那样

    具体看相关头文件


    YYUIWebView.h


    //

    //Generated by class-dump 3.5 (64 bit).

    //

    //class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2013 by Steve Nygard.

    //

    #import"UIWebView.h"

    #import"UIWebViewDelegate.h"

    #import"YYWebViewInterface.h"

    @classNSString, NSURLRequest, UIScrollView;

    @interfaceYYUIWebView : UIWebView

    {

    _BoolallowsBackForwardNavigationGestures;

    id wvDelegate;

    }

    @property(nonatomic)id wvDelegate;// @synthesize wvDelegate;

    @property(nonatomic)_BoolallowsBackForwardNavigationGestures;// @synthesize allowsBackForwardNavigationGestures;

    - (void)webView:(id)arg1 didFailLoadWithError:(id)arg2;

    - (void)webViewDidFinishLoad:(id)arg1;

    - (void)webViewDidStartLoad:(id)arg1;

    - (_Bool)webView:(id)arg1 shouldStartLoadWithRequest:(id)arg2 navigationType:(longlong)arg3;

    - (void)enableJavaScriptPopup:(_Bool)arg1;

    - (void)evaluateJavaScriptFromString:(id)arg1 completionBlock:(CDUnknownBlockType)arg2;

    - (id)initWithFrame:(structCGRect)arg1 delegate:(id)arg2;

    - (id)initWithFrame:(structCGRect)arg1;

    // Remaining properties

    @property(nonatomic)_BoolallowsInlineMediaPlayback;

    @property(readonly,nonatomic,getter=canGoBack)_BoolcanGoBack;

    @property(readonly,nonatomic,getter=canGoForward)_BoolcanGoForward;

    @property(readonly,copy) NSString *debugDescription;

    @property(readonly,copy) NSString *description;

    @property(readonly)unsignedlonglonghash;

    @property(readonly,nonatomic,getter=isLoading)_Boolloading;

    @property(nonatomic)_BoolmediaPlaybackRequiresUserAction;

    @property(readonly,nonatomic) NSURLRequest *request;

    @property(nonatomic)_BoolscalesPageToFit;

    @property(readonly,nonatomic) UIScrollView *scrollView;

    @property(readonly) Class superclass;

    @end


    WebViewJSLogicImpl.h


    //

    //Generated by class-dump 3.5 (64 bit).

    //

    //class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2013 by Steve Nygard.

    //

    #import"MMObject.h"

    #import"JSEventHandler.h"

    #import"WebviewJSEventHandlerBaseDelegate.h"

    @classNSMutableArray, NSMutableDictionary, NSString, UIView, WebviewJSEventHandlerFacade;

    @interfaceWebViewJSLogicImpl : MMObject

    {

    NSMutableDictionary *_jsCallbackHooks;

    NSMutableDictionary *_jsUrlHooks;

    NSMutableArray *_jsEvents;

    WebviewJSEventHandlerFacade *_jsEventHandlerFacade;

    UIView *_webView;

    id _delegate;

    NSString *_curRandomUUID;

    NSString *_curContextUUID;

    _Bool_isUseMd5ForJSAPI;

    }

    @property(retain,nonatomic) UIView *webView;// @synthesize webView=_webView;

    @property(nonatomic)__weakid delegate;// @synthesize delegate=_delegate;

    - (void).cxx_destruct;

    - (void)reportIDKeyForJsApiCall:(id)arg1;

    - (void)reportIDKeyForInjectJS;

    - (id)sha1:(id)arg1;

    - (void)sendEventToJSBridge:(id)arg1 params:(id)arg2 completionBlock:(CDUnknownBlockType)arg3;

    - (void)sendMessageToJSBridge:(id)arg1 completionBlock:(CDUnknownBlockType)arg2;

    - (void)injectPluginJS;

    - (void)injectWeixinJSBridge;

    - (void)sendGetA8KeyUrlEvent:(id)arg1;

    - (void)markPageWebCached;

    - (void)tryInjectWeixinJSBridge:(id)arg1;

    - (id)isExistJSApis:(id)arg1;

    - (id)webviewController;

    - (id)GetCurrentWebviewViewController;

    - (void)jsHandlerHandle:(id)arg1;

    - (void)onEndEvent:(id)arg1 withResult:(id)arg2;

    - (void)setJSAPIFunctionMap:(id)arg1;

    - (id)funcDefByName:(id)arg1;

    - (void)webviewWillAnimateRotationToInterfaceOrientation:(longlong)arg1 duration:(double)arg2;

    - (id)extraDataForNextJSEventCalled:(id)arg1;

    - (void)recoverJSAPIEventDelegateWithBackup;

    - (void)cleanJSAPIDelegate;

    - (void)handleJSApiDispatchMessage:(id)arg1;

    - (void)functionCall:(id)arg1 withParams:(id)arg2 withCallbackID:(id)arg3;

    - (id)jsEventWithFunction:(id)arg1 params:(id)arg2 callBackID:(id)arg3;

    - (void)dealloc;

    - (id)init;

    // Remaining properties

    @property(readonly,copy) NSString *debugDescription;

    @property(readonly,copy) NSString *description;

    @property(readonly)unsignedlonglonghash;

    @property(readonly) Class superclass;

    @end


    MMWebViewController.h



    //

    //Generated by class-dump 3.5 (64 bit).

    //

    //class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2013 by Steve Nygard.

    //

    #import"MMUIViewController.h"

    #import"EnterpriseConnectorLogicDelegate.h"

    #import"IUiUtilExt.h"

    #import"MMExposeViewControllerDelegate.h"

    #import"MMJSApiVerifyMgrDelegate.h"

    #import"MMScrollActionSheetDelegate.h"

    #import"MMWebViewFontFloatViewDelegate.h"

    #import"UIAlertViewDelegate.h"

    #import"UIGestureRecognizerDelegate.h"

    #import"UIScrollViewDelegate.h"

    #import"UIWebViewDelegate.h"

    #import"WCActionSheetDelegate.h"

    #import"WCForceTouchPopProtocol.h"

    #import"WebViewA8KeyLogicDelegate.h"

    #import"WebViewJSLogicDelegate.h"

    #import"WebViewURLCheckLogicDelegate.h"

    #import"YYWebViewDelegate.h"

    @classBrandActionReportLogicController, CContact, EnterpriseConnectorLogic, JSConsoleViewController, MMAnimationTipView, MMJSApiVerifyMgr, MMScrollActionSheet, MMURLHandler, MMWebProgressBar, MMWebViewController_SwipeGestureGoBackHistory, MMWebViewPluginScheduler, NSCache, NSMutableArray, NSMutableDictionary, NSMutableSet, NSString, NSURLConnection, UIActivityIndicatorView, UIButton, UIImageView, UILabel, UILongPressGestureRecognizer, UITapGestureRecognizer, UIView, UIView, UIViewController, WCDeepLinkHandler, WCStatTimerHelper, WXGesture, WebViewA8KeyLogicImpl, WebViewJSLogicImpl, WebViewMenuCustomizeLogic, WebViewTimeProfileData, WebViewURLCheckLogic;

    @interfaceMMWebViewController : MMUIViewController

    {

    UIView *webView;

    UILabel *m_deeplinkRedirecting;

    UIImageView *m_addressBarView;

    UILabel *m_addressLabel;

    UIButton *m_addressBarBtn;

    UIActivityIndicatorView *m_activityView;

    MMURLHandler *m_urlHandler;

    WXGesture *m_gesture;

    NSString *m_initUrl;

    WebViewA8KeyLogicImpl *m_a8KeyLogicImpl;

    JSConsoleViewController *m_consoleViewController;

    WebViewJSLogicImpl *m_jsLogicImpl;

    WebViewURLCheckLogic *m_urlCheckLogic;

    unsignedintm_uiBackCount;

    _Boolm_isPageDidLoaded;

    UIButton *m_loadFailView;

    NSMutableArray *m_actionSheetRow1;

    NSMutableArray *m_actionSheetRow2;

    MMScrollActionSheet *m_scrollActionSheet;

    WebViewMenuCustomizeLogic *m_menuCustomizeLogic;

    NSMutableDictionary *m_jsInitInfo;

    WCDeepLinkHandler *m_deepLinkHandler;

    EnterpriseConnectorLogic *m_enterpriseConnectorLogic;

    _Boolm_bDeepLink;

    _Boolm_isScrollMenuScroll;

    MMJSApiVerifyMgr *m_apiVerifyMgr;

    _Bool_bIsDisablePullDown;

    _Bool_bIsDisablePullUp;

    CDUnknownBlockType _OnInitReadyNotifyBlock;

    CDUnknownBlockType m_blockOnWebViewWillReturn;

    _Bool_bIsHideShareMenuByJsApi;

    UILabel *m_previewTopBar;

    UIView *m_previewTopBarBg;

    _Boolm_isPreviewing;

    _Boolm_isFinishLoaded;

    UIView *_previewSourceView;

    UIViewController *_previewFromController;

    _Bool_bIsStatusBarBlack;

    _Bool_bUseColorfulNavBar;

    _Bool_bUseTransparentNaviBar;

    _Boolm_bLongPressRightButton;

    id m_delegate;

    _Boolm_bAutoSetTitle;

    NSMutableSet *m_jsTempAllowApiCalls;

    _Boolm_isDisableShareMenu;

    _Boolm_disalbeStartLoadGetA8Key;

    unsignedintm_addScence;

    UIView *m_customLoadingView;

    UIView *_tailBgView;

    _Boolm_bShouldForcedRotationToPortrait;

    unsignedintm_stat_enterTime;

    WCStatTimerHelper *m_oStatTimerHelper;

    longlongm_loadingCount;

    UITapGestureRecognizer *_singleTapRec;

    unsignedlonglong_singleTapCount;

    UILongPressGestureRecognizer *m_longPressGestureRecognizer;

    MMWebViewController_SwipeGestureGoBackHistory *swipeGoBackLogic;

    _Boolm_openAllPermission;

    _Boolm_isPageLoading;

    NSString *m_jump;

    _Boolm_viewDidAppear;

    NSString *m_oLoadingUrl;

    WebViewTimeProfileData *m_webTimeProfileData;

    _Boolm_isPageLoadFail;

    _Boolm_bPresentModal;

    _Boolm_bLoadFromLocalServer;

    vector_01fc9dba _pIDKeyList;

    _Boolm_bHasAnimated;

    _Boolm_bOfflinePage;

    _Boolm_bIsRefreshOfflinePageAction;

    _Boolm_bIFrame;

    BrandActionReportLogicController *m_brandActionReport;

    NSString *_httpHeadReferer;

    _Bool_bIsDraggingScroll;

    double_fLastStartOffsetY;

    _Bool_bIsForceShowCloseButton;

    _Bool_bIsAlreadyReloadWebviewFromJsapi;

    _Boolm_bFullScreen;

    NSMutableArray *_arrRouteUrl;

    _Boolm_bIsCloseWebGL;

    unsignedint_startTime;

    _Bool_bIsTouchedScreen;

    _Bool_bHasFinishLoadOnce;

    _Boolm_isLanscape;

    _Boolm_bIsJsapiUploadVideoUploading;

    _Bool_m_canCache;

    _Bool_m_bUserHasClickLink;

    _Bool_m_bIsDelayPushWebView;

    int_m_webviewType;

    NSMutableDictionary *m_extraInfo;

    NSCache *m_urlCheckResultCache;

    NSString *m_nsJSFitContent;

    doublem_fTabBarHeight;

    MMWebViewPluginScheduler *_pluginScheduler;

    CContact *_brandContact;

    MMWebProgressBar *_m_progressBar;

    UIView *_m_navBarView;

    MMAnimationTipView *_m_animationTipView;

    NSURLConnection *_m_connection;

    NSString *_m_lastCheckCpKey;

    }

    @property(retain,nonatomic) NSString *m_lastCheckCpKey;// @synthesize m_lastCheckCpKey=_m_lastCheckCpKey;

    @property(retain,nonatomic) NSURLConnection *m_connection;// @synthesize m_connection=_m_connection;

    @property(retain,nonatomic) MMAnimationTipView *m_animationTipView;// @synthesize m_animationTipView=_m_animationTipView;

    @property(nonatomic)intm_webviewType;// @synthesize m_webviewType=_m_webviewType;

    @property(nonatomic)_Boolm_bIsDelayPushWebView;// @synthesize m_bIsDelayPushWebView=_m_bIsDelayPushWebView;

    @property(retain,nonatomic) UIView *m_navBarView;// @synthesize m_navBarView=_m_navBarView;

    @property(retain,nonatomic) MMWebProgressBar *m_progressBar;// @synthesize m_progressBar=_m_progressBar;

    @property(nonatomic)_Boolm_bUserHasClickLink;// @synthesize m_bUserHasClickLink=_m_bUserHasClickLink;

    @property(retain,nonatomic) CContact *brandContact;// @synthesize brandContact=_brandContact;

    @property(nonatomic)_Boolm_canCache;// @synthesize m_canCache=_m_canCache;

    @property(retain,nonatomic) MMWebViewPluginScheduler *pluginScheduler;// @synthesize pluginScheduler=_pluginScheduler;

    @property(nonatomic)_Boolm_bIsJsapiUploadVideoUploading;// @synthesize m_bIsJsapiUploadVideoUploading;

    @property(nonatomic)_Boolm_bUseTransparentNaviBar;// @synthesize m_bUseTransparentNaviBar=_bUseTransparentNaviBar;

    @property(nonatomic)_Boolm_bUseColorfulNavBar;// @synthesize m_bUseColorfulNavBar=_bUseColorfulNavBar;

    @property(nonatomic)_Boolm_bIsStatusBarBlack;// @synthesize m_bIsStatusBarBlack=_bIsStatusBarBlack;

    @property(nonatomic)_Boolm_bIsHideShareMenuByJsApi;// @synthesize m_bIsHideShareMenuByJsApi=_bIsHideShareMenuByJsApi;

    @property(nonatomic)doublem_fTabBarHeight;// @synthesize m_fTabBarHeight;

    @property(retain,nonatomic) NSString *m_nsJSFitContent;// @synthesize m_nsJSFitContent;

    @property(readonly,nonatomic)_Boolm_isPreviewing;// @synthesize m_isPreviewing;

    @property(retain,nonatomic) NSCache *m_urlCheckResultCache;// @synthesize m_urlCheckResultCache;

    @property(nonatomic)_Boolm_bDeepLink;// @synthesize m_bDeepLink;

    @property(retain,nonatomic) UIImageView *m_addressBarView;// @synthesize m_addressBarView;

    @property(retain,nonatomic) UILabel *m_addressLabel;// @synthesize m_addressLabel;

    @property(readonly,nonatomic) NSString *m_initUrl;// @synthesize m_initUrl;

    @property(retain,nonatomic) NSMutableDictionary *m_extraInfo;// @synthesize m_extraInfo;

    @property(retain,nonatomic) UIView *m_customLoadingView;// @synthesize m_customLoadingView;

    @property(nonatomic)_Boolm_isLanscape;// @synthesize m_isLanscape;

    @property(readonly,nonatomic) WebViewA8KeyLogicImpl *m_a8KeyLogicImpl;// @synthesize m_a8KeyLogicImpl;

    @property(readonly,nonatomic) WebViewJSLogicImpl *m_jsLogicImpl;// @synthesize m_jsLogicImpl;

    @property(nonatomic)__weakid m_delegate;// @synthesize m_delegate;

    @property(retain,nonatomic) UIView *webView;// @synthesize webView;

    - (id).cxx_construct;

    - (void).cxx_destruct;

    - (id)tagForCurrentPage;

    - (void)forceShowCloseButton;

    - (void)setNotifyWillReturnBlock:(CDUnknownBlockType)arg1;

    - (void)setDelayLoadActionBlock:(CDUnknownBlockType)arg1;

    - (void)restoreToDefaultNavBar;

    - (void)setNavBarBgColor:(id)arg1;

    - (id)getWebviewBannerTitle;

    - (id)getLeftBarButton;

    - (void)setFullScreenNavAlpha:(id)arg1;

    - (void)setTailBackGroundColor:(id)arg1;

    - (void)viewWillPop:(_Bool)arg1;

    - (void)viewWillPush:(_Bool)arg1;

    - (void)setFullScreen:(_Bool)arg1;

    - (void)enableFullScreen;

    - (void)onClickFailView:(id)arg1;

    - (void)hideLoadFailView;

    - (void)relayoutLoadFailView;

    - (void)showLoadFailView:(unsignedint)arg1 errorCode:(longlong)arg2;

    - (void)onPreverifyFinished;

    - (id)getJSFunctionDef:(id)arg1;

    - (_Bool)isGetingA8Key;

    - (void)onFinishedHandleJSApi;

    - (void)onPageStateChange:(id)arg1;

    - (void)onDomReady;

    - (void)handleFromWeixinNotify:(id)arg1;

    - (id)getCurrentWebviewViewController;

    - (_Bool)canAccessJSApi:(id)arg1;

    - (id)getAuthorizedMonitorEvents:(id)arg1;

    - (void)tryStartOutlinkDetect;

    - (unsignedchar)getJSApiPermission:(id)arg1;

    - (_Bool)isShowMenuItem:(id)arg1;

    - (unsignedchar)getPermissionWithName:(id)arg1;

    - (void)processJSAPICall:(id)arg1 funcDef:(id)arg2 funcBlock:(CDUnknownBlockType)arg3 failHandleBlock:(CDUnknownBlockType)arg4 apiPermission:(unsignedchar)arg5;

    - (void)url:(id)arg1 DidCheckReturnContentAttribute:(unsignedint)arg2;

    - (void)onJumpToEmoticonDetailViewController:(id)arg1;

    - (void)onJumpToViewController:(id)arg1;

    - (void)onJumpToSafariWithUrl:(id)arg1;

    - (void)onUpdatedPermisson;

    - (void)onGetA8Key:(_Bool)arg1 Reason:(int)arg2;

    - (void)onStartGetA8Key;

    - (void)saveJSAPIPermissionsInOfflineCache:(id)arg1 url:(id)arg2;

    - (void)saveJSAPIPermissions:(id)arg1 url:(id)arg2;

    - (void)saveJSAPIAuthInfo:(id)arg1;

    - (void)sendGetA8KeyUrlEvent;

    - (void)kvReportJSCall:(id)arg1 withParam:(id)arg2;

    - (void)sendEventToJSBridge:(id)arg1 Param:(id)arg2;

    - (void)doJsApiInitEvent;

    - (void)showWXPayTip;

    - (void)updateRightBarButtonWithURL:(id)arg1;

    - (void)setCurrentUrl:(id)arg1;

    - (unsignedint)getCurrentScene;

    - (_Bool)isContentOriginal;

    - (_Bool)isCanShowAllMenus;

    - (_Bool)isPageDidLoad;

    - (id)getCurrentUrl;

    - (void)stopForcedRotationToPortrait;

    - (void)startForcedRotationToPortrait;

    - (void)keyboardDidShow:(id)arg1;

    - (void)removeNotificationObservers;

    - (void)initNotificationObservers;

    - (id)getWebViewTimeProfileData;

    - (id)webviewController;

    - (void)permitTempAccessOfJSApi:(id)arg1;

    - (_Bool)isTempAccessOfJSApiPermitted:(id)arg1;

    - (_Bool)isAccessPermitttedByPermissionBitSet:(id)arg1;

    - (void)shareToFB;

    - (void)immediateDismissWebViewController;

    - (void)dismissWebViewController;

    - (void)setDisableWebAlertView:(_Bool)arg1;

    - (_Bool)isMenuAction:(id)arg1;

    - (id)getRequestingOrCurrentUrl;

    - (void)onSelectFont:(unsignedint)arg1;

    - (_Bool)shoudDelaySetFont;

    - (void)dealloc;

    - (void)reportWhenDealloc;

    - (void)OnClose;

    - (void)backToAppIfNeed;

    - (void)OnReturn;

    - (void)doBackActionCleanWithType:(_Bool)arg1;

    - (void)alertView:(id)arg1 clickedButtonAtIndex:(longlong)arg2;

    - (void)showAlertUploadingVideo;

    - (void)cleanJSAPIDelegate;

    - (_Bool)isSvrErrorTipForbidden;

    - (void)willDisappear;

    - (_Bool)useBlackStatusbar;

    - (_Bool)useCustomNavibar;

    - (_Bool)useTransparentNavibar;

    - (void)applicationWillEnterForeground;

    - (void)applicationDidEnterBackground;

    - (void)applicationWillResignActive;

    - (void)startWebSearch:(id)arg1;

    - (void)doSearch:(id)arg1;

    - (void)setCustomMenu;

    - (void)viewDidLoad;

    - (void)willAnimateRotationToInterfaceOrientation:(longlong)arg1 duration:(double)arg2;

    - (void)willRotateToInterfaceOrientation:(longlong)arg1 duration:(double)arg2;

    - (void)didRotateFromInterfaceOrientation:(longlong)arg1;

    - (unsignedlonglong)supportedInterfaceOrientations;

    - (_Bool)allowsAutoMediaPlay;

    - (_Bool)allowsInlineMediaPlay;

    - (void)setCustomLoadingView:(id)arg1;

    - (void)webView:(id)arg1 didFailLoadWithError:(id)arg2;

    - (void)removeCustomLoadingView;

    - (void)delaySetFontsWithSize:(id)arg1;

    - (void)webviewDidReceiveScriptMessage:(id)arg1 handler:(id)arg2;

    - (void)webViewDidFinishLoad:(id)arg1;

    - (void)webViewDidStartLoad:(id)arg1;

    - (id)getPreInjectScriptStr;

    - (void)handleJumpProfileUrl:(id)arg1 profileRange:(struct_NSRange)arg2;

    - (void)delayHandleUrl:(id)arg1;

    - (_Bool)isPhoneNumberUrl:(id)arg1;

    - (_Bool)webView:(id)arg1 shouldStartLoadWithRequest:(id)arg2 navigationType:(longlong)arg3 isMainFrame:(_Bool)arg4;

    - (void)markNeedCheckUrlAndRemoveLastCheckedUrl:(id)arg1;

    - (void)delayPopForAppStore;

    - (id)getUrlPermission:(id)arg1;

    - (_Bool)hasUrlPermission:(id)arg1;

    - (id)getLastUrl;

    - (void)goToURL:(id)arg1;

    - (void)goForward;

    - (void)goBack;

    - (void)stop;

    - (void)clearWebviewCacheAndCookie:(_Bool)arg1;

    - (void)cleanWebCacheFromReloadMenuAction;

    - (void)reload;

    - (id)getRoutUrls;

    - (void)onInfoBarButtonClick:(id)arg1;

    - (void)onSessionBarButtonClick:(id)arg1;

    - (void)createBrandActionReport;

    - (void)setShareBarItem:(id)arg1;

    - (unsignedint)GetGeneralBitSetForUrl:(id)arg1;

    - (_Bool)IsBitsetSet:(unsignedint)arg1 forUrl:(id)arg2;

    - (_Bool)allowScanQRCodeByImage;

    - (unsignedint)GetPermissionBitSet3;

    - (unsignedint)GetPermissionBitSet2;

    - (unsignedint)GetPermissionBitSet;

    - (unsignedlonglong)GetDeepLinkBitSet;

    - (void)done:(id)arg1;

    - (void)adjustSubviewRects;

    - (void)willDismissAndShow;

    - (void)viewWillBeDismissed:(_Bool)arg1;

    - (void)viewDidBePoped:(_Bool)arg1;

    - (void)viewWillBePoped:(_Bool)arg1;

    - (void)viewWillBePushed:(_Bool)arg1;

    - (void)viewDidDisappear:(_Bool)arg1;

    - (void)viewWillDisappear:(_Bool)arg1;

    - (void)viewWillAppear:(_Bool)arg1;

    - (void)didAppear;

    - (void)willAppear;

    - (void)onMenuControllerDidShow:(id)arg1;

    - (void)onMenuControllerDidHide:(id)arg1;

    - (void)viewDidAppear:(_Bool)arg1;

    - (_Bool)isViewDidAppear;

    - (void)notifyToJSBridgeVisibilityChanged:(_Bool)arg1;

    - (void)loadHTMLString:(id)arg1 baseURL:(id)arg2;

    - (id)extraInfo;

    - (void)doDNS;

    - (void)StartLoadWeb;

    - (void)setExtraInfoValue:(id)arg1 forKey:(id)arg2;

    - (void)setIsHideShareMenuByJsApi:(_Bool)arg1;

    - (void)setDisableShareMenu:(_Bool)arg1;

    - (void)setAddFriendScene:(unsignedint)arg1;

    - (void)setAutoSetTitle:(_Bool)arg1;

    - (void)setWebviewType:(int)arg1;

    - (id)getOperationButtonImageNameWithURL:(id)arg1;

    - (void)onLongPressOnWebview:(id)arg1;

    - (_Bool)abtestCloseWebSingleTapEnable;

    - (void)onSingleTap:(id)arg1;

    - (void)enableSingleTapDetect;

    - (void)enableLongPressDetect;

    - (_Bool)gestureRecognizer:(id)arg1 shouldRequireFailureOfGestureRecognizer:(id)arg2;

    - (_Bool)gestureRecognizer:(id)arg1 shouldBeRequiredToFailByGestureRecognizer:(id)arg2;

    - (_Bool)gestureRecognizer:(id)arg1 shouldReceiveTouch:(id)arg2;

    - (_Bool)gestureRecognizer:(id)arg1 shouldRecognizeSimultaneouslyWithGestureRecognizer:(id)arg2;

    - (_Bool)gestureRecognizerShouldBegin:(id)arg1;

    - (void)shouldShowGoBackBtn;

    - (void)setSwipeBackInteractiveEnable:(_Bool)arg1;

    - (id)initWithURL:(id)arg1 presentModal:(_Bool)arg2 extraInfo:(id)arg3 referer:(id)arg4;

    - (id)initWithURL:(id)arg1 presentModal:(_Bool)arg2 extraInfo:(id)arg3 delegate:(id)arg4;

    - (id)initWithURL:(id)arg1 presentModal:(_Bool)arg2 extraInfo:(id)arg3;

    - (void)internalInitWithUrl:(id)arg1 presentModal:(_Bool)arg2 extraInfo:(id)arg3;

    - (_Bool)isABTestAllowUseWkWebview;

    - (void)scrollViewDidEndScrollingAnimation:(id)arg1;

    - (void)scrollViewDidScroll:(id)arg1;

    - (void)scrollViewWillBeginDecelerating:(id)arg1;

    - (void)scrollViewDidEndDragging:(id)arg1 willDecelerate:(_Bool)arg2;

    - (void)scrollViewWillBeginDragging:(id)arg1;

    - (void)resetWebviewInsetOrY;

    - (void)calcCurrentWebViewInset:(structUIEdgeInsets *)arg1 y:(double*)arg2 height:(double*)arg3;

    - (void)calcCurrentWebViewY:(double*)arg1 height:(double*)arg2;

    - (void)restoreAddressBar;

    - (void)initAddressBarView;

    - (void)initDeeplinkRedirectingView;

    - (void)initDeepLinkConfig;

    - (id)getVCWithDeepLinkName:(id)arg1;

    - (id)getAddressBarHostText:(id)arg1;

    - (void)initNavigationBarItem;

    - (void)initProgressView;

    - (id)getInitUrl;

    - (id)getShareUrl;

    - (void)setPayTitle:(id)arg1;

    - (id)getCurrentAppId;

    - (void)setPublisher:(id)arg1;

    - (void)setTitle:(id)arg1;

    - (void)setRightBarButtonItemEnabled:(_Bool)arg1;

    - (void)accessDeepLink:(id)arg1 Url:(id)arg2;

    - (void)jumpDeepLink:(id)arg1;

    - (_Bool)canAccessDeepLink:(id)arg1 Url:(id)arg2;

    - (void)hideAllNonBaseMenuItem;

    - (void)showAllNonBaseMenuItem;

    - (void)showMenuitemBatch:(id)arg1;

    - (void)hideMenuitemBatch:(id)arg1;

    - (void)modifyPermissionValue:(id)arg1 permissionValue:(unsignedchar)arg2;

    - (void)startupPreVerifyJSAPI:(id)arg1 failHandleBlock:(CDUnknownBlockType)arg2;

    - (void)doCleanCookiesForUrl:(id)arg1;

    - (void)cleanCookiesIfNeed;

    - (void)stopPullDownRefreshAnimation;

    - (void)startPullDownRefreshAnimation;

    - (void)disablePullDownRefreshMode;

    - (void)setEnablePullDownRefreshMode;

    - (void)restoreDefaultBackgroundColorAndCleanFooterBounceColor;

    - (void)setCustomBackgroundColor:(id)arg1;

    - (void)setDisableWebViewScrollViewPullUp;

    - (void)setDisableWebViewScrollViewPullDown;

    - (void)setDisableWebViewScrollViewBounces;

    - (id)colorWithHtmlRGBAString:(id)arg1;

    - (void)setEnterpriseConnectorLogic:(id)arg1;

    - (id)getEnterpriseConnectorLogic;

    - (void)showJSLog:(id)arg1;

    - (void)promptForAuthInfo:(id)arg1;

    - (void)checkApiAuthorization:(id)arg1;

    - (void)reportIDKeyForLoadFinish:(longlong)arg1;

    - (void)reportIDKeyForSystemError:(longlong)arg1;

    - (void)reportIDKeyForAllRequest;

    - (void)logFeature11576WithOpType:(unsignedint)arg1;

    - (void)reportWhenClickMenuWithActionType:(unsignedlonglong)arg1;

    - (void)onExposeComplete;

    - (void)showEnterpriseConnectResult:(id)arg1;

    - (void)onEnterpriseConnectFail:(id)arg1;

    - (void)onEnterpriseConnectSucceed:(id)arg1;

    - (void)onEnterpriseSelectChat:(id)arg1 brand:(id)arg2 logic:(id)arg3;

    - (void)onEnterpriseSelectBrand:(id)arg1 logic:(id)arg2;

    - (void)onWebViewEditTag;

    - (void)onWebViewDelete;

    - (void)actionSheet:(id)arg1 clickedButtonAtIndex:(longlong)arg2;

    - (void)scrollActionSheetWillDismiss:(id)arg1;

    - (void)scrollActionSheetDidScroll:(id)arg1;

    - (void)logFeature11577WithOpType:(unsignedlonglong)arg1;

    - (void)scrollActionSheet:(id)arg1 didSelecteItem:(id)arg2;

    - (void)setupRow1;

    - (void)setupRow2;

    - (void)setupIconActionSheetCells;

    - (void)setupPreShowIconActionSheet;

    - (void)AddMemuData:(id)arg1 toRow:(id)arg2;

    - (void)setupCustomMenuForJD;

    - (void)addJSCustomMenuData:(id)arg1;

    - (void)showCustomActionSheet:(id)arg1;

    - (void)onOperate:(id)arg1;

    - (void)addH5GameExtraButton:(id)arg1;

    - (void)addViewBrandContactButtonWithArrary:(id)arg1;

    - (void)addReturnBackToNewMainFrameButtonWithArrary:(id)arg1;

    - (void)addQQBrowserButtonWithArrary:(id)arg1;

    - (void)addShareToWeWorkButtonWithArray:(id)arg1;

    - (void)addShareToQZoneButtonWithArray:(id)arg1;

    - (void)addShareToQQButtonWithArray:(id)arg1;

    - (void)addExposeButtonWithArray:(id)arg1;

    - (void)addAdjustFontButtonWithArray:(id)arg1;

    - (void)addFavouriteButtonWithArray:(id)arg1;

    - (void)addCopyToPasteboardButtonWithArray:(id)arg1;

    - (void)addSendToEnterpriseWithArray:(id)arg1;

    - (void)addOpenInSafariButtonWithArray:(id)arg1;

    - (void)addRefreshButtonWithArray:(id)arg1;

    - (void)addSupportBrandToMenuAtEndOf:(id)arg1;

    - (id)AddNewActionSheetCell2Array:(id)arg1 WithText:(id)arg2 WithImage:(id)arg3;

    - (void)readMode;

    - (void)hideChangeFont;

    - (void)exposeArticle;

    - (void)showChangeFont:(unsignedint)arg1;

    - (void)copyToPasteBoard;

    - (void)openWithQQBrowser;

    - (void)openWithSafari;

    - (void)jumpToInstallUrl:(id)arg1;

    - (void)shareWithAppMessage:(id)arg1;

    - (void)sendToEnterprise;

    - (void)shareWithEmail;

    - (void)shareToWeWork;

    - (void)shareToQZone;

    - (void)shareToWeibo;

    - (void)shareToQQ;

    - (void)shareToFaceBook;

    - (void)shareToTimeline;

    - (void)setFontWithSize:(longlong)arg1;

    - (void)internalShowJSLog:(id)arg1;

    - (void)log3DTouchWebViewActionFeatureWithOpType:(id)arg1;

    - (id)previewActionItems;

    - (id)initForPreviewWithURL:(id)arg1 presentModal:(_Bool)arg2 extraInfo:(id)arg3;

    - (void)commitViewController;

    - (_Bool)canPop;

    @property(nonatomic)__weakUIView *previewSourceView;

    @property(nonatomic)__weakUIViewController *previewFromController;

    // Remaining properties

    @property(readonly,copy) NSString *debugDescription;

    @property(readonly,copy) NSString *description;

    @property(readonly)unsignedlonglonghash;

    @property(readonly) Class superclass;

    @end


    WAMainListViewController.h


    //

    //Generated by class-dump 3.5 (64 bit).

    //

    //class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2013 by Steve Nygard.

    //

    #import"MMUIViewController.h"

    #import"IWAAppEntryExtension.h"

    #import"UITableViewDataSource.h"

    #import"UITableViewDelegate.h"

    #import"WAAppItemManagerExtension.h"

    #import"WAContactMgrExtension.h"

    #import"WASearchControllerDelegate.h"

    #import"WCActionSheetDelegate.h"

    @classMMTableView, MMToastViewController, NSDictionary, NSMutableArray, NSMutableDictionary, NSMutableSet, NSString, UISearchBar, UIView, WAAppItemData, WAPackageSweeperLogic, WASearchController;

    @interfaceWAMainListViewController : MMUIViewController

    {

    NSMutableArray *m_historyItems;

    NSMutableArray *m_starItems;

    NSMutableSet *m_starSet;

    NSMutableArray *m_unStarHistoryItemMenuArray;

    NSMutableArray *m_staredHistoryItemMenuArray;

    NSMutableDictionary *m_contactViewCache;

    WAAppItemData *m_appItemToDelete;

    WAPackageSweeperLogic *m_sweepLogic;

    NSString *m_showSessionId;

    _Bool_isShowSearchBar;

    NSMutableArray *m_sessionData;

    _Bool_isViewHasLayout;

    NSString *m_nearByUrl;

    unsignedlonglongm_scene;

    NSString *m_relatedUserName;

    WASearchController *_searchController;

    UISearchBar *_searchBar;

    UIView *_topNavView;

    MMTableView *_tableView;

    MMToastViewController *_toastView;

    UIView *_emptyView;

    NSDictionary *_searchResult;

    }

    @property(retain,nonatomic) NSDictionary *searchResult;// @synthesize searchResult=_searchResult;

    @property(retain,nonatomic) UIView *emptyView;// @synthesize emptyView=_emptyView;

    @property(retain,nonatomic) MMToastViewController *toastView;// @synthesize toastView=_toastView;

    @property(retain,nonatomic) MMTableView *tableView;// @synthesize tableView=_tableView;

    @property(retain,nonatomic) UIView *topNavView;// @synthesize topNavView=_topNavView;

    @property(retain,nonatomic) UISearchBar *searchBar;// @synthesize searchBar=_searchBar;

    @property(retain,nonatomic) WASearchController *searchController;// @synthesize searchController=_searchController;

    @property(copy,nonatomic) NSString *m_relatedUserName;// @synthesize m_relatedUserName;

    @property(nonatomic)unsignedlonglongm_scene;// @synthesize m_scene;

    - (void).cxx_destruct;

    - (void)fixTableViewOffset;

    - (void)didEndSearch;

    - (void)willBeginSearch;

    - (void)reportDestopOpWithAppItem:(id)arg1 eventId:(unsignedlonglong)arg2;

    - (void)reportDestopStateWhenViewAppear;

    - (void)onWeAppItemUnStared:(id)arg1 errCode:(int)arg2;

    - (void)onWeAppItemStared:(id)arg1 errCode:(int)arg2;

    - (void)onWeAppItemsInfoUpdated;

    - (void)onWeAppItemOpened:(id)arg1;

    - (void)openStarListView;

    - (_Bool)hasStarSection;

    - (id)genStaredHistoryItemMenuArray;

    - (id)genUnStarHistoryItemMenuArray;

    - (_Bool)hasRunningAppTask;

    - (id)getContactByUserName:(id)arg1;

    - (void)reloadTableView;

    - (void)showTipsViewController:(id)arg1;

    - (void)showToast:(id)arg1;

    - (void)setAppItemStarState:(_Bool)arg1 appItem:(id)arg2;

    - (void)onDeleteAppListItemAtIndexPath:(id)arg1 appItem:(id)arg2;

    - (void)onSearchPlaceHolderUpdate:(id)arg1;

    - (void)onOpenNearWeApps;

    - (void)onNearWeAppUpdate:(id)arg1;

    - (void)onModifyWeAppContact:(id)arg1;

    - (longlong)tableView:(id)arg1 editingStyleForRowAtIndexPath:(id)arg2;

    - (void)tableView:(id)arg1 commitEditingStyle:(longlong)arg2 forRowAtIndexPath:(id)arg3;

    - (void)tableView:(id)arg1 didSelectRowAtIndexPath:(id)arg2;

    - (double)tableView:(id)arg1 heightForRowAtIndexPath:(id)arg2;

    - (double)tableView:(id)arg1 heightForFooterInSection:(longlong)arg2;

    - (id)tableView:(id)arg1 cellForRowAtIndexPath:(id)arg2;

    - (longlong)tableView:(id)arg1 numberOfRowsInSection:(longlong)arg2;

    - (longlong)numberOfSectionsInTableView:(id)arg1;

    - (void)actionSheet:(id)arg1 clickedButtonAtIndex:(longlong)arg2;

    - (void)onMoreOperate;

    - (void)onReturn;

    - (void)updateFooter;

    - (void)initEmptyView;

    - (void)initSearchController;

    - (void)initTopNavView;

    - (void)initTableView;

    - (void)updateNavigationItems;

    - (void)initCustomNavigationBar;

    - (void)viewDidLayoutSubviews;

    - (_Bool)useBlackStatusbar;

    - (_Bool)useTransparentNavibar;

    - (void)adjustTableViewInset:(id)arg1;

    - (void)viewDidAppear:(_Bool)arg1;

    - (void)viewWillAppear:(_Bool)arg1;

    - (void)viewDidLoad;

    - (void)dealloc;

    - (void)updateEmptyViewState;

    - (longlong)indexOfSessionId:(id)arg1;

    - (void)updateSectionData;

    - (void)updateData;

    - (id)init;

    // Remaining properties

    @property(readonly,copy) NSString *debugDescription;

    @property(readonly,copy) NSString *description;

    @property(readonly)unsignedlonglonghash;

    @property(readonly) Class superclass;

    @end

    相关文章

      网友评论

          本文标题:逆向分析微信小程序

          本文链接:https://www.haomeiwen.com/subject/qvmjpttx.html