MCPcopy Create free account

hub / github.com/baidu/titan-hotfix / functions

Functions1,521 in github.com/baidu/titan-hotfix

↓ 2 callersMethoddiffCommonOverlap
Determine if the suffix of one string is the prefix of another. @param text1 First string. @param text2 Second string. @return The number of characte
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:646
↓ 2 callersMethoddiffHalfMatchI
Does a substring of shorttext exist within longtext such that the substring is at least half the length of longtext? @param longtext Longer string.
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:746
↓ 2 callersMethoddiffLinesToCharsMunge
Split a text into a list of strings. Reduce the texts to a string of hashes where each Unicode character represents one line. @param text Strin
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:547
↓ 2 callersMethoddiffText2
Compute and return the destination text (all equalities and insertions). @param diffs List of Diff objects. @return Destination text.
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:1424
↓ 2 callersMethoddiffXIndex
loc is a location in text1, compute and return the equivalent location in text2. e.g. "The cat" vs "The big cat", 1->1, 5->8 @param diffs List of Dif
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:1341
↓ 2 callersMethoddoCleanPatchsLocked
clean unused patches
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchManagerService.java:449
↓ 2 callersMethoddoPatch
(PatchArgument argument)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchMain.java:40
↓ 2 callersMethodenqueueWork
Convenience method for enqueuing work in to this service.
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/sandbox/WorkerService.java:92
↓ 2 callersMethodensureJobId
(int jobId)
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/sandbox/JobIntentService.java:121
↓ 2 callersMethodextractDex
extract single dex @param patchZip @param entry @param patchDir @throws IOException
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchManagerService.java:404
↓ 2 callersMethodfillComponentsInfo
(File manifestFile, Map<String, List<String>> components)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentMain.java:273
↓ 2 callersMethodfillComponentsInfoFromApkFile
(File apktoolDir, File apkPath, Map<String, List<Stri
titan-core/src/main/java/com/baidu/titan/core/patch/full/FullPatch.java:235
↓ 2 callersMethodfind
(T t, int a)
titan-core/src/test/smali/instrument/t006-generic/info/GenericSmali.java:7
↓ 2 callersMethodfindClass
(DexType type)
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/LightAddedClassGenerator.java:97
↓ 2 callersMethodfindGenesisInitMethodAnnotation
(DexMethodNode m, TitanDexItemFactory fac
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentGenesisClassHierarchy.java:662
↓ 2 callersMethodfinish
生成最终的Interceptor
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/changed/InterceptorProcessor.java:304
↓ 2 callersMethodfromAccessFlag
(int accessFlags)
titan-core/src/main/java/com/baidu/titan/core/transforms/AccessFlagsTransformation.java:67
↓ 2 callersMethodgenerateInitInterceptorCode
生成初始化interceptor代码,对于原来没有<clinit>方法的类,无法通过lazy load加载patch, 需要在patch loader apply中直接创建对应的$iter类实例并保存到对应类的$ic字段中 指令伪代码如下: new-instance v0, $iter invoke
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/LightPatchLoaderGenerator.java:275
↓ 2 callersMethodgenerateMethodBytes
(DexClassNode dcn, DexMethodNode dmn, boolean ignoreDebugInfo)
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedMethodDiffMarker.java:366
↓ 2 callersMethodgetAnonymousClassType
(DexClassNode dcn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassMarker.java:97
↓ 2 callersMethodgetByteBuffer
Relative <em>get</em> method for reading {@code size} number of bytes from the current position of this buffer. <p>This method reads the next {@code
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/ApkSignatureSchemeV2Verifier.java:861
↓ 2 callersMethodgetClassNodeBytes
(DexClassNode dcn, boolean ignoreDebugInfo)
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedClassDiffMarker.java:587
↓ 2 callersMethodgetClassNodeBytes
(DexClassNode dcn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassNodeCache.java:37
↓ 2 callersMethodgetClassNodeBytes
将dexclass node 转为字节,用于进行快速对比 @param dcn dexclassnode @param ignoreDebugInfo 是否忽略debug info @return class的字节数据
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassDiffMarker.java:242
↓ 2 callersMethodgetContentDigestAlgorithmOutputSizeBytes
(int digestAlgorithm)
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/ApkSignatureSchemeV2Verifier.java:758
↓ 2 callersMethodgetDexPath
获取dexPatch @return
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchInstallInfo.java:174
↓ 2 callersMethodgetEncoded
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/ApkSignatureSchemeV2Verifier.java:1279
↓ 2 callersMethodgetGenesisInitMethodId
(DexMethodNode m, TitanDexItemFactory factory)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentGenesisClassHierarchy.java:675
↓ 2 callersMethodgetGenesisType
(DexType orgType, DexItemFactory factory)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchUtils.java:113
↓ 2 callersMethodgetInitMethod
()
titan-core/src/main/java/com/baidu/titan/core/instrument/InitMethodAnalyzer.java:122
↓ 2 callersMethodgetInstance
获取单例 @return
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchManagerService.java:79
↓ 2 callersMethodgetInstrumentType
()
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentMain.java:123
↓ 2 callersMethodgetInvokeKind
()
titan-core/src/main/java/com/baidu/titan/core/patch/full/generator/InterceptorGenerator.java:126
↓ 2 callersMethodgetInvokeMethodName
()
titan-core/src/main/java/com/baidu/titan/core/patch/full/generator/InterceptorGenerator.java:137
↓ 2 callersMethodgetInvokeParameters
()
titan-core/src/main/java/com/baidu/titan/core/patch/full/generator/InterceptorGenerator.java:111
↓ 2 callersMethodgetInvokeSpecialMethod
(DexType... types)
titan-core/src/main/java/com/baidu/titan/core/TitanDexItemFactory.java:137
↓ 2 callersMethodgetLockFile
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchInstallInfo.java:77
↓ 2 callersMethodgetManifestFile
()
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:170
↓ 2 callersMethodgetMethodByName
(Class<?> aClass, String name, Class[] paramTypes)
titan-sdk/runtime/src/main/java/com/baidu/titan/sdk/runtime/TitanRuntime.java:270
↓ 2 callersMethodgetMethodNodeByMethodRef
(int dop, ClassLinker linker, DexClassLoader loader,
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedMethodDiffMarker.java:274
↓ 2 callersMethodgetName
()
titan-core/src/test/smali/lightpatch/t014-remove-override-method/info/old/ToastUtil.java:80
↓ 2 callersMethodgetNewOrgDexs
()
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:257
↓ 2 callersMethodgetNormalizedClassNodeBytes
(ApplicationDexPool dexPool, TitanDexItemFactory dexItemFactory,
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassNodeCache.java:44
↓ 2 callersMethodgetOldInstrumentedDexs
()
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:197
↓ 2 callersMethodgetOrCreateDexFileNode
(int dexId)
titan-core/src/main/java/com/baidu/titan/core/instrument/MultiDexFileNodeFiller.java:49
↓ 2 callersMethodgetOrderedDexList
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchInstallInfo.java:199
↓ 2 callersMethodgetPendingCleanFile
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchManager.java:119
↓ 2 callersMethodgetSaveToLocalReg
(RegisterPc registerPc, int reg, int ref)
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/changed/LightInitMethodSplitter.java:391
↓ 2 callersMethodgetSmaliOutDir
获取smali输出目录 @return smali输出目录
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:352
↓ 2 callersMethodgetStatusFile
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchInstallInfo.java:73
↓ 2 callersMethodgetUnsignedInt32
(ByteBuffer buffer, int offset)
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/ZipUtils.java:252
↓ 2 callersMethodgetWorkEnqueuer
(Context context, ComponentName cn, boolean hasJobId, int jobId)
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/sandbox/JobIntentService.java:552
↓ 2 callersMethodgetZipEntryContent
(ZipFile zipFile, String entryName)
titan-core/src/main/java/com/baidu/titan/core/util/ZipUtil.java:76
↓ 2 callersMethodhasMapClass
(DexClassNode dcn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassDiffMarker.java:447
↓ 2 callersMethodisIncompatiable
是否有不兼容的修改 @return
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedClassDiffMarker.java:267
↓ 2 callersMethodisMeizuPush
检查class是否是meizu push sdk中的类 @param dcn dex class node @return class是否是meizu push sdk中的类
titan-core/src/main/java/com/baidu/titan/core/instrument/MeizuPushMarker.java:46
↓ 2 callersMethodloadInternal
加载patch @return 加载错误码
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/loader/LoaderManager.java:182
↓ 2 callersMethodloadPatch
进行签名校验和使用classloader加载patch @param loadInTime 是否是实时加载 @param installInfo @return
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/loader/LoaderManager.java:365
↓ 2 callersMethodmark
对class pool中的类进行判断和标记匿名内部类
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassMarker.java:74
↓ 2 callersMethodnewArray
(final int vParaArrayReg, int arraySize, int pDstObjectReg, DexConst.ConstFieldRef fieldRef)
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/changed/LightInitMethodSplitter.java:259
↓ 2 callersMethodnoDifferent
(File src, File expect)
titan-core/src/test/java/com/baidu/titan/core/tests/TestUtil.java:55
↓ 2 callersMethodonAdd
(T item)
titan-core/src/main/java/com/baidu/titan/core/util/ListDiffer.java:121
↓ 2 callersMethodonPatchInstalled
(int statusCode, Bundle extra)
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchManager.java:105
↓ 2 callersMethodonRemove
(T item)
titan-core/src/main/java/com/baidu/titan/core/util/ListDiffer.java:124
↓ 2 callersMethodpatchAddContext
Increase the context until it is unique, but don't let the pattern expand beyond matchMaxBits. @param patch The patch to grow. @param text Source te
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:1778
↓ 2 callersMethodprintDiffStatus
(TitanLogger logger)
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ClassPoolDiffMarker.java:140
↓ 2 callersMethodprocessorFinished
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/sandbox/JobIntentService.java:644
↓ 2 callersMethodreadFile
Read a file from disk and return the text contents.
titan-core/src/test/java/com/baidu/titan/core/tests/TestUtil.java:121
↓ 2 callersMethodserviceProcessingFinished
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/sandbox/JobIntentService.java:139
↓ 2 callersMethodsetCallStaticInit
设置是否需要在patchloader中调用static init @param dcn 设置extra info的class node @param callStaticInit 是否调用static init
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/LightClassClinitInterceptorGenerator.java:113
↓ 2 callersMethodsetClinitChanged
标记clinit发生了修改 @param dcn 被标记为发生修改的class node
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/LightClassClinitInterceptorGenerator.java:132
↓ 2 callersMethodsetDexOutDir
(File dexOutDir)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:119
↓ 2 callersMethodsetInstrumentMateriel
(MultiDexFileBytes orgDexs, File manifestFile)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentMain.java:151
↓ 2 callersMethodsetInstrumentType
(InstrumentType type)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentMain.java:119
↓ 2 callersMethodsetManifestFromNewApkFile
(boolean fromApk)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:234
↓ 2 callersMethodsetManifestFromOldApk
(boolean fromApk)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:174
↓ 2 callersMethodsetOldApkFile
(File oldApkFile)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:210
↓ 2 callersMethodsetOldDexs
(MultiDexFileBytes oldDexs)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentMain.java:131
↓ 2 callersMethodsetUnsignedInt32LittleEndian
(int value, byte[] result, int offset)
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/ApkSignatureSchemeV2Verifier.java:912
↓ 2 callersMethodsetWorkDir
(File workDir)
titan-core/src/main/java/com/baidu/titan/core/patch/PatchArgument.java:110
↓ 2 callersMethodsetWormHoleInitMethod
(DexMethodNode dmn, boolean set)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentGenesisClassHierarchy.java:966
↓ 2 callersMethodshouldCopyClass
()
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedClassDiffMarker.java:274
↓ 2 callersMethodshouldRename
(DexClassNode dcn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassDiffMarker.java:443
↓ 2 callersMethodshouldRewrite
(DexClassNode outerDcn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/plum/AnonymousClassDiffMarker.java:439
↓ 2 callersMethodtoJSONString
转换成json string @return json string
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/stat/LoaderTimeStat.java:99
↓ 2 callersMethodunbind
()
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/pm/PatchManager.java:164
↓ 2 callersMethodunescapeForEncodeUriCompatability
Unescape selected chars for compatability with JavaScript's encodeURI. In speed critical applications this could be dropped since the receiving applic
titan-core/src/test/java/com/baidu/titan/core/tests/DiffMatchPatch.java:2540
↓ 2 callersMethodverifySignature
对patch进行签名校验 @return 校验结果
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/SignatureVerifier.java:70
↓ 2 callersMethodverifySignatureSchemeV1
校验v1版本签名 @return 校验结果
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/SignatureVerifier.java:140
↓ 2 callersMethodverifySignatureSchemeV2
校验V2版本签名 @return 是否校验成功
titan-sdk/pm/src/main/java/com/baidu/titan/sdk/verifier/SignatureVerifier.java:174
↓ 2 callersMethodvisitBegin
()
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedMethodDiffMarker.java:245
↓ 2 callersMethodvisitCallInit
(int pThisReg, int vInitContextReg, DexConst.Con
titan-core/src/main/java/com/baidu/titan/core/instrument/transforms/ComponentDirectInstanceInitMethodTransformation.java:262
↓ 2 callersMethodvisitClass
(DexClassNode dcn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ClassPoolDiffMarker.java:196
↓ 2 callersMethodvisitEnd
()
titan-core/src/main/java/com/baidu/titan/core/patch/light/diff/ChangedMethodDiffMarker.java:358
↓ 2 callersMethodvisitField
(DexFieldNode dfn)
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/changed/LightChangedClassGenerator.java:220
↓ 2 callersMethodvisitMethod
(DexMethodNode dmn)
titan-core/src/main/java/com/baidu/titan/core/instrument/DisableInterceptMarker.java:133
↓ 2 callersMethodvisitTryCatch
(DexLabel start, DexLabel end, DexTypeList types, DexLabel[] handlers, DexLabel
titan-core/src/main/java/com/baidu/titan/core/patch/light/generator/changed/NormalChangedCodeRewriter.java:90
↓ 2 callersMethodwaitLoad
等待patch加载完成 @param hashCode 进行初始化的类的typeDesc对应的hashcode @param typeDesc 进行初始化的类的类名描述 @return 是否执行了等待操作
titan-sdk/runtime/src/main/java/com/baidu/titan/sdk/runtime/ClassClinitInterceptorDelegate.java:34
↓ 1 callersMethodacceptClass
(String typeDesc)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentFilter.java:28
↓ 1 callersMethodacceptMethod
(String methodDesc)
titan-core/src/main/java/com/baidu/titan/core/instrument/InstrumentFilter.java:30
← previousnext →201–300 of 1,521, ranked by callers