package Ġcom . kl ax it . h idd ense crets Ċ Ċ /** Ċ Ġ* ĠHelper Ġto Ġgenerate ĠC ++ Ġand ĠKotlin Ġcode Ċ Ġ*/ Ċ class ĠCode Generator Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠReturn Ġthe ĠC ++ Ġcode Ġto Ġadd Ġanother Ġkey Ġto Ġyour Ġproject ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget Cpp Code ( packageName : ĠString , Ġkey Name : ĠString , Ġob fuscated Key : ĠString ): ĠString Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ"\ n extern Ġ\" C \"\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" JNI EXPORT Ġj string ĠJNICALL \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Java _" Ġ+ ĠUtils . get Under S cored PackageName ( packageName ) Ġ+ Ġ"_ Secrets _ get $ key Name (\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ ĠJNI Env * Ġp Env ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġjobject Ġp This ,\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠĠ Ġj string ĠpackageName ) Ġ{\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠ Ġchar Ġob fuscated Secret [] Ġ= Ġ$ ob fuscated Key ;\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠ Ġreturn Ġget Original Key ( ob fuscated Secret , Ġsizeof ( ob fuscated Secret ), ĠpackageName , Ġp Env );\ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }\ n " ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠKotlin Ġcode Ġthat Ġwill Ġbe Ġadded Ġin Ġyour Ġproject ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget Kotlin Code ( key Name : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ"\ n ĠĠĠ Ġexternal Ġfun Ġget $ key Name ( packageName : ĠString ): ĠString \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" }" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }