[{"data":1,"prerenderedAt":1176},["ShallowReactive",2],{"global-navigation":3,"page-\u002Fandroid-secure-coding-standard":28,"surround-\u002Fandroid-secure-coding-standard":670,"sidebar-android-secure-coding-standard":676},[4,8],{"title":5,"path":6,"_path":6,"fromAppConfig":7},"Home","\u002F",true,{"title":9,"path":10,"children":11,"_path":27,"fromAppConfig":7},"Coding Standards","\u002Fcoding-standards\u002F",[12,15,18,21,24],{"title":13,"path":14},"Android Coding Standard","\u002Fandroid-secure-coding-standard\u002F",{"title":16,"path":17},"C Coding Standard","\u002Fsei-cert-c-coding-standard\u002F",{"title":19,"path":20},"C++ Coding Standard","\u002Fsei-cert-cpp-coding-standard\u002F",{"title":22,"path":23},"Java Coding Standard","\u002Fsei-cert-oracle-coding-standard-for-java\u002F",{"title":25,"path":26},"Perl Coding Standard","\u002Fsei-cert-perl-coding-standard\u002F","\u002Fcoding-standards",{"id":29,"title":30,"body":31,"description":663,"extension":664,"meta":665,"navigation":7,"path":666,"seo":667,"stem":668,"__hash__":669},"content\u002F3.android-secure-coding-standard\u002F1.index.md","SCI CERT Android Secure Coding Standard",{"type":32,"value":33,"toc":650},"minimark",[34,38,47,52,55,66,70,86,90,272,276,458,462,494,498,517,521,529,540,544,601,605,615,618,622],[35,36,30],"h1",{"id":37},"sci-cert-android-secure-coding-standard",[39,40,41,42,46],"p",{},"The Android ",[43,44,45],"sup",{},"TM"," rules and recommendations in this wiki are a work in progress and reflect the current thinking of the secure coding community. Because this is a development website, many pages are incomplete or contain errors. As rules and recommendations mature, they are published in report or book form as official releases. These releases are issued as dictated by the needs and interests of the secure software development community.",[48,49,51],"h2",{"id":50},"comments-and-contributing","Comments and Contributing",[39,53,54],{},"We provide access to the community members to contribute after subject matter expertise is verified.",[39,56,57,58,65],{},"For questions and comments about these standards, open a GitHub issue. For anything else, please ",[59,60,64],"a",{"href":61,"rel":62},"https:\u002F\u002Fwww.sei.cmu.edu\u002Fcontact-us\u002F",[63],"nofollow","submit feedback",".",[48,67,69],{"id":68},"front-matter","Front Matter",[71,72,73,80],"ul",{},[74,75,76],"li",{},[59,77,79],{"href":78},"\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fguidelines-for-wiki-contributors\u002F","Guidelines for Wiki Contributors",[74,81,82],{},[59,83,85],{"href":84},"\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fintroduction\u002F","Introduction",[48,87,89],{"id":88},"rules","Rules",[71,91,92,98,104,110,116,122,128,134,140,146,152,158,164,170,176,182,188,194,200,206,212,218,224,230,236,242,248,254,260,266],{},[74,93,94],{},[59,95,97],{"href":96},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fcomponent-security-cps\u002F","Rule 00. Component Security (CPS)",[74,99,100],{},[59,101,103],{"href":102},"\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002F","Rule 01. File I\u002FO and Logging (FIO)",[74,105,106],{},[59,107,109],{"href":108},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fintent-itt\u002F","Rule 02. Intent (ITT)",[74,111,112],{},[59,113,115],{"href":114},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fwebview-wbv\u002F","Rule 03. WebView (WBV)",[74,117,118],{},[59,119,121],{"href":120},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fnetwork-ssltls-net\u002F","Rule 04. Network - SSL\u002FTLS (NET)",[74,123,124],{},[59,125,127],{"href":126},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fpermission-per\u002F","Rule 05. Permission (PER)",[74,129,130],{},[59,131,133],{"href":132},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fcryptography-crp\u002F","Rule 06. Cryptography (CRP)",[74,135,136],{},[59,137,139],{"href":138},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002F","Rule 07. Miscellaneous (MSC)",[74,141,142],{},[59,143,145],{"href":144},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl","Rule 08. Declarations and Initialization (DCL)",[74,147,148],{},[59,149,151],{"href":150},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fapplication-programming-interfaces-api","Rule 09. Application Programming Interfaces (API)",[74,153,154],{},[59,155,157],{"href":156},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fenvironment-env","Rule 10. Environment (ENV)",[74,159,160],{},[59,161,163],{"href":162},"\u002Fandroid-secure-coding-standard\u002Frules\u002Ferror-handling-err","Rule 11. Error Handling (ERR)",[74,165,166],{},[59,167,169],{"href":168},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fexpressions-exp","Rule 12. Expressions (EXP)",[74,171,172],{},[59,173,175],{"href":174},"\u002Fandroid-secure-coding-standard\u002Frules\u002Ffloating-point-flp","Rule 13. Floating Point (FLP)",[74,177,178],{},[59,179,181],{"href":180},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fintegers-int","Rule 14. Integers (INT)",[74,183,184],{},[59,185,187],{"href":186},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fmemory-management-mem","Rule 15. Memory Management (MEM)",[74,189,190],{},[59,191,193],{"href":192},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fpreprocessor-pre","Rule 16. Preprocessor (PRE)",[74,195,196],{},[59,197,199],{"href":198},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fcharacters-and-string-str","Rule 17. Characters and String (STR)",[74,201,202],{},[59,203,205],{"href":204},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fconcurrency-con","Rule 18. Concurrency (CON)",[74,207,208],{},[59,209,211],{"href":210},"\u002Fandroid-secure-coding-standard\u002Frules\u002Finput-validation-and-data-sanitization-ids","Rule 19. Input Validation and Data Sanitization (IDS)",[74,213,214],{},[59,215,217],{"href":216},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fjava-native-interface-jni","Rule 20. Java Native Interface (JNI)",[74,219,220],{},[59,221,223],{"href":222},"\u002Fandroid-secure-coding-standard\u002Frules\u002Flocking-lck","Rule 21. Locking (LCK)",[74,225,226],{},[59,227,229],{"href":228},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fmethods-met","Rule 22. Methods (MET)",[74,231,232],{},[59,233,235],{"href":234},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fnumeric-types-and-operations-num","Rule 23. Numeric Types and Operations (NUM)",[74,237,238],{},[59,239,241],{"href":240},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fobject-orientation-obj","Rule 24. Object Orientation (OBJ)",[74,243,244],{},[59,245,247],{"href":246},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fserialization-ser","Rule 25. Serialization (SER)",[74,249,250],{},[59,251,253],{"href":252},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fthread-apis-thi","Rule 26. Thread APIs (THI)",[74,255,256],{},[59,257,259],{"href":258},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fthread-safety-miscellaneous-tsm","Rule 27. Thread-Safety Miscellaneous (TSM)",[74,261,262],{},[59,263,265],{"href":264},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fvisibility-and-atomicity-vna","Rule 28. Visibility and Atomicity (VNA)",[74,267,268],{},[59,269,271],{"href":270},"\u002Fandroid-secure-coding-standard\u002Frules\u002Fplatform-security-sec","Rule 29. Platform Security (SEC)",[48,273,275],{"id":274},"recommendations","Recommendations",[71,277,278,284,290,296,302,308,314,320,326,332,338,344,350,356,362,368,374,380,386,392,398,404,410,416,422,428,434,440,446,452],{},[74,279,280],{},[59,281,283],{"href":282},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fcomponent-security-cps","Rec. 00 Component Security (CPS)",[74,285,286],{},[59,287,289],{"href":288},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Ffile-io-and-logging-fio","Rec. 01. File I\u002FO and Logging (FIO)",[74,291,292],{},[59,293,295],{"href":294},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fintent-itt","Rec. 02. Intent (ITT)",[74,297,298],{},[59,299,301],{"href":300},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fwebview-wbv","Rec. 03. WebView (WBV)",[74,303,304],{},[59,305,307],{"href":306},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fnetwork-ssltls-net","Rec. 04. Network - SSL\u002FTLS (NET)",[74,309,310],{},[59,311,313],{"href":312},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fpermission-per","Rec. 05. Permission (PER)",[74,315,316],{},[59,317,319],{"href":318},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fcryptography-crp","Rec. 06. Cryptography (CRP)",[74,321,322],{},[59,323,325],{"href":324},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fmiscellaneous-msc","Rec. 07. Miscellaneous (MSC)",[74,327,328],{},[59,329,331],{"href":330},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fdeclarations-and-initialization-dcl","Rec. 08. Declarations and Initialization (DCL)",[74,333,334],{},[59,335,337],{"href":336},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fapplication-programming-interfaces-api","Rec. 09. Application Programming Interfaces (API)",[74,339,340],{},[59,341,343],{"href":342},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fenvironment-env","Rec. 10. Environment (ENV)",[74,345,346],{},[59,347,349],{"href":348},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Ferror-handling-err","Rec. 11. Error Handling (ERR)",[74,351,352],{},[59,353,355],{"href":354},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fexpressions-exp","Rec. 12. Expressions (EXP)",[74,357,358],{},[59,359,361],{"href":360},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Ffloating-point-flp","Rec. 13. Floating Point (FLP)",[74,363,364],{},[59,365,367],{"href":366},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fintegers-int","Rec. 14. Integers (INT)",[74,369,370],{},[59,371,373],{"href":372},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fmemory-management-mem","Rec. 15. Memory Management (MEM)",[74,375,376],{},[59,377,379],{"href":378},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fpreprocessor-pre","Rec. 16. Preprocessor (PRE)",[74,381,382],{},[59,383,385],{"href":384},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fcharacters-and-strings-str","Rec. 17. Characters and Strings (STR)",[74,387,388],{},[59,389,391],{"href":390},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fconcurrency-con","Rec. 18. Concurrency (CON)",[74,393,394],{},[59,395,397],{"href":396},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Finput-validation-and-data-sanitization-ids","Rec. 19. Input Validation and Data Sanitization (IDS)",[74,399,400],{},[59,401,403],{"href":402},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fjava-native-interface-jni","Rec. 20. Java Native Interface (JNI)",[74,405,406],{},[59,407,409],{"href":408},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Flocking-lck","Rec. 21. Locking (LCK)",[74,411,412],{},[59,413,415],{"href":414},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fmethods-met","Rec. 22. Methods (MET)",[74,417,418],{},[59,419,421],{"href":420},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fnumeric-types-and-operations-num","Rec. 23. Numeric Types and Operations (NUM)",[74,423,424],{},[59,425,427],{"href":426},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fobject-orientation-obj","Rec. 24. Object Orientation (OBJ)",[74,429,430],{},[59,431,433],{"href":432},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fserialization-ser","Rec. 25. Serialization (SER)",[74,435,436],{},[59,437,439],{"href":438},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fthread-apis-thi","Rec. 26. Thread APIs (THI)",[74,441,442],{},[59,443,445],{"href":444},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fthread-safety-miscellaneous-tsm","Rec. 27. Thread-Safety Miscellaneous (TSM)",[74,447,448],{},[59,449,451],{"href":450},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fvisibility-and-atomicity-vna","Rec. 28. Visibility and Atomicity (VNA)",[74,453,454],{},[59,455,457],{"href":456},"\u002Fandroid-secure-coding-standard\u002Frecommendations\u002Fplatform-security-sec","Rec. 29. Platform Security (SEC)",[48,459,461],{"id":460},"rules-and-recommendations-by-language","Rules and Recommendations by Language",[71,463,464,470,476,482,488],{},[74,465,466],{},[59,467,469],{"href":468},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fandroid-only","Android Only",[74,471,472],{},[59,473,475],{"href":474},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fc-coding-language\u002F","C Coding Language",[74,477,478],{},[59,479,481],{"href":480},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fcpp-coding-language","C++ Coding Language",[74,483,484],{},[59,485,487],{"href":486},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fjava-coding-language\u002F","Java Coding Language",[74,489,490],{},[59,491,493],{"href":492},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fxml","XML",[48,495,497],{"id":496},"rules-vs-recomendations","Rules vs. Recomendations",[39,499,500,501,504,505,507,508,511,512,516],{},"This coding standard consists of ",[502,503,88],"em",{}," and ",[502,506,274],{}," , collectively referred to as ",[502,509,510],{},"guidelines"," . Rules are meant to provide normative requirements for code, whereas recommendations are meant to provide guidance that, when followed, should improve the safety, reliability, and security of software systems. ",[59,513,515],{"href":514},"..\u002Fsei-cert-c-coding-standard\u002Ffront-matter\u002Fintroduction\u002Frules-versus-recommendations","Learn more"," about the differences.",[48,518,520],{"id":519},"contact-us","Contact Us",[39,522,523,528],{},[59,524,527],{"href":525,"rel":526},"http:\u002F\u002Fwww.cert.org\u002Fsecure-coding\u002Fcontact.cfm",[63],"Contact us"," if you",[71,530,531,534,537],{},[74,532,533],{},"have questions about the Secure Coding wiki",[74,535,536],{},"have recommendations for standards in development",[74,538,539],{},"want to request privileges to participate in standards development",[48,541,543],{"id":542},"information-for-editors","Information for Editors",[71,545,546,556,564,572,580,588,595],{},[74,547,548,549,504,552,555],{},"To eliminate a section from the lists above, label it ",[502,550,551],{},"section",[502,553,554],{},"void"," .",[74,557,558,559,504,561,555],{},"To have a section listed as a recommendation, label it ",[502,560,551],{},[502,562,563],{},"recommendation",[74,565,566,567,504,569,555],{},"To have a section listed as a rule, label it ",[502,568,551],{},[502,570,571],{},"rule",[74,573,574,575,579],{},"See a complete ",[59,576,578],{"href":577},"\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fdictionary-of-labels","dictionary of labels"," to help you label your pages correctly.",[74,581,582,583,587],{},"Link to guidelines using the ",[584,585,586],"strong",{},"Tiny Link"," under Tools→Link to this Page... (This URL will not change if the name of the guideline changes.)",[74,589,590,591,594],{},"Review the ",[59,592,510],{"href":593},"\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fresources-for-new-android-app-secure-coding-rules-and-guidelines"," for writing secure coding rules\u002Frecommendations.",[74,596,597,598,600],{},"To add a new rule, follow the steps on the ",[59,599,79],{"href":78}," page.",[48,602,604],{"id":603},"legal","Legal",[39,606,41,607,609,610,555],{},[43,608,45],{}," robot is reproduced from work created and shared by Google and used according to terms described in the ",[59,611,614],{"href":612,"rel":613},"http:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby\u002F3.0\u002F",[63],"Creative Commons 3.0 Attribution License",[39,616,617],{},"Android is a trademark of Google Inc.",[48,619,621],{"id":620},"attachments","Attachments:",[623,624,628],"div",{"className":625,"align":627},[626],"greybox","left",[39,629,630,635,636,641,642,645,635,647,641],{},[631,632],"img",{"alt":633,"src":634},"","images\u002Ficons\u002Fbullet_blue.gif"," ",[59,637,640],{"href":638,"target":639},"\u002Fattachments\u002F87150684\u002F87151649.png","_blank","Android.png"," (image\u002Fpng)",[643,644],"br",{},[631,646],{"alt":633,"src":634},[59,648,640],{"href":649,"target":639},"\u002Fattachments\u002F87150684\u002F87151650.png",{"title":633,"searchDepth":651,"depth":651,"links":652},2,[653,654,655,656,657,658,659,660,661,662],{"id":50,"depth":651,"text":51},{"id":68,"depth":651,"text":69},{"id":88,"depth":651,"text":89},{"id":274,"depth":651,"text":275},{"id":460,"depth":651,"text":461},{"id":496,"depth":651,"text":497},{"id":519,"depth":651,"text":520},{"id":542,"depth":651,"text":543},{"id":603,"depth":651,"text":604},{"id":620,"depth":651,"text":621},"The Android TM rules and recommendations in this wiki are a work in progress and reflect the current thinking of the secure coding community. Because this is a development website, many pages are incomplete or contain errors. As rules and recommendations mature, they are published in report or book form as official releases. These releases are issued as dictated by the needs and interests of the secure software development community.","md",{},"\u002Fandroid-secure-coding-standard",{"title":30,"description":663},"3.android-secure-coding-standard\u002F1.index","ujkW3H8F2lYs_UUgrF1Q9vnAxaLL6oXLnXRfOE_JAqs",[671,673],{"title":9,"path":27,"stem":672},"2.coding-standards",{"title":69,"path":674,"stem":675},"\u002Fandroid-secure-coding-standard\u002Ffront-matter","3.android-secure-coding-standard\u002F2.front-matter\u002F1.index",[677],{"title":30,"path":666,"stem":668,"children":678},[679,680,725,968,1034,1088,1112],{"title":30,"path":666,"stem":668},{"title":69,"path":674,"stem":675,"children":681},[682,683,704],{"title":69,"path":674,"stem":675},{"title":79,"path":684,"stem":685,"children":686},"\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fguidelines-for-wiki-contributors","3.android-secure-coding-standard\u002F2.front-matter\u002F2.guidelines-for-wiki-contributors\u002F1.index",[687,688,692,696,700],{"title":79,"path":684,"stem":685},{"title":689,"path":690,"stem":691},"Deprecations","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fguidelines-for-wiki-contributors\u002Fdeprecations","3.android-secure-coding-standard\u002F2.front-matter\u002F2.guidelines-for-wiki-contributors\u002F2.deprecations",{"title":693,"path":694,"stem":695},"Editing Automated Detection Information","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fguidelines-for-wiki-contributors\u002Fediting-automated-detection-information","3.android-secure-coding-standard\u002F2.front-matter\u002F2.guidelines-for-wiki-contributors\u002F3.editing-automated-detection-information",{"title":697,"path":698,"stem":699},"Editing-Related Guidelines","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fguidelines-for-wiki-contributors\u002Fediting-related-guidelines","3.android-secure-coding-standard\u002F2.front-matter\u002F2.guidelines-for-wiki-contributors\u002F4.editing-related-guidelines",{"title":701,"path":702,"stem":703},"Rules versus Recommendations","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fguidelines-for-wiki-contributors\u002Frules-versus-recommendations","3.android-secure-coding-standard\u002F2.front-matter\u002F2.guidelines-for-wiki-contributors\u002F5.rules-versus-recommendations",{"title":85,"path":705,"stem":706,"children":707},"\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fintroduction","3.android-secure-coding-standard\u002F2.front-matter\u002F3.introduction\u002F01.index",[708,709,713,717,721],{"title":85,"path":705,"stem":706},{"title":710,"path":711,"stem":712},"Introduction to Android-Only Rules","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fintroduction-to-android-only-rules","3.android-secure-coding-standard\u002F2.front-matter\u002F3.introduction\u002F02.introduction-to-android-only-rules",{"title":714,"path":715,"stem":716},"Introduction to C Rules and Recommendations","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fintroduction-to-c-rules-and-recommendations","3.android-secure-coding-standard\u002F2.front-matter\u002F3.introduction\u002F03.introduction-to-c-rules-and-recommendations",{"title":718,"path":719,"stem":720},"Introduction to Java Recommendations","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fintroduction-to-java-recommendations","3.android-secure-coding-standard\u002F2.front-matter\u002F3.introduction\u002F04.introduction-to-java-recommendations",{"title":722,"path":723,"stem":724},"Introduction to Java Rules","\u002Fandroid-secure-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fintroduction-to-java-rules","3.android-secure-coding-standard\u002F2.front-matter\u002F3.introduction\u002F05.introduction-to-java-rules",{"title":89,"path":726,"stem":727,"children":728},"\u002Fandroid-secure-coding-standard\u002Frules","3.android-secure-coding-standard\u002F3.rules\u002F01.index",[729,730,733,736,758,761,783,786,789,792,795,825,828,831,834,852,855,858,861,864,890,904,907,910,932,935,938,941,944,947,950],{"title":89,"path":726,"stem":727},{"title":731,"path":150,"stem":732},"Application Programming Interfaces (API)","3.android-secure-coding-standard\u002F3.rules\u002F02.application-programming-interfaces-api",{"title":734,"path":198,"stem":735},"Characters and String (STR)","3.android-secure-coding-standard\u002F3.rules\u002F03.characters-and-string-str",{"title":737,"path":738,"stem":739,"children":740},"Component Security (CPS)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcomponent-security-cps","3.android-secure-coding-standard\u002F3.rules\u002F04.component-security-cps\u002F1.index",[741,742,746,750,754],{"title":737,"path":738,"stem":739},{"title":743,"path":744,"stem":745},"DRD01-X. Limit the accessibility of an app's sensitive content provider","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcomponent-security-cps\u002Fdrd01-x","3.android-secure-coding-standard\u002F3.rules\u002F04.component-security-cps\u002F2.drd01-x",{"title":747,"path":748,"stem":749},"DRD07-X. Protect exported services with strong permissions","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcomponent-security-cps\u002Fdrd07-x","3.android-secure-coding-standard\u002F3.rules\u002F04.component-security-cps\u002F3.drd07-x",{"title":751,"path":752,"stem":753},"DRD08-J. Always canonicalize a URL received by a content provider","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcomponent-security-cps\u002Fdrd08-j","3.android-secure-coding-standard\u002F3.rules\u002F04.component-security-cps\u002F4.drd08-j",{"title":755,"path":756,"stem":757},"DRD09. Restrict access to sensitive activities","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcomponent-security-cps\u002Fdrd09-restrict-access-to-sensitive-activities","3.android-secure-coding-standard\u002F3.rules\u002F04.component-security-cps\u002F5.drd09-restrict-access-to-sensitive-activities",{"title":759,"path":204,"stem":760},"Concurrency (CON)","3.android-secure-coding-standard\u002F3.rules\u002F05.concurrency-con",{"title":762,"path":763,"stem":764,"children":765},"Cryptography (CRP)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcryptography-crp","3.android-secure-coding-standard\u002F3.rules\u002F06.cryptography-crp\u002F1.index",[766,767,771,775,779],{"title":762,"path":763,"stem":764},{"title":768,"path":769,"stem":770},"DRD17-J. Do not use the Android cryptographic security provider encryption default for AES","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcryptography-crp\u002Fdrd17-j","3.android-secure-coding-standard\u002F3.rules\u002F06.cryptography-crp\u002F2.drd17-j",{"title":772,"path":773,"stem":774},"DRD18. Do not use the default behavior in a cryptographic library if it does not use recommended practices","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcryptography-crp\u002Fdrd18-do-not-use-the-default-behavior-in-a-cryptographic-library-if-it-does-not-use-recommended-practices","3.android-secure-coding-standard\u002F3.rules\u002F06.cryptography-crp\u002F3.drd18-do-not-use-the-default-behavior-in-a-cryptographic-library-if-it-does-not-use-recommended-practices",{"title":776,"path":777,"stem":778},"DRD24. Do not bundle OAuth security-related protocol logic or sensitive data into a relying party's app","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcryptography-crp\u002Fdrd24-do-not-bundle-oauth-security-related-protocol-logic-or-sensitive-data-into-a-relying-partys-app","3.android-secure-coding-standard\u002F3.rules\u002F06.cryptography-crp\u002F4.drd24-do-not-bundle-oauth-security-related-protocol-logic-or-sensitive-data-into-a-relying-partys-app",{"title":780,"path":781,"stem":782},"DRD25. Use constant-time encryption","\u002Fandroid-secure-coding-standard\u002Frules\u002Fcryptography-crp\u002Fdrd25-use-constant-time-encryption","3.android-secure-coding-standard\u002F3.rules\u002F06.cryptography-crp\u002F5.drd25-use-constant-time-encryption",{"title":784,"path":144,"stem":785},"Declarations and Initialization (DCL)","3.android-secure-coding-standard\u002F3.rules\u002F07.declarations-and-initialization-dcl",{"title":787,"path":156,"stem":788},"Environment (ENV)","3.android-secure-coding-standard\u002F3.rules\u002F08.environment-env",{"title":790,"path":162,"stem":791},"Error Handling (ERR)","3.android-secure-coding-standard\u002F3.rules\u002F09.error-handling-err",{"title":793,"path":168,"stem":794},"Expressions (EXP)","3.android-secure-coding-standard\u002F3.rules\u002F10.expressions-exp",{"title":796,"path":797,"stem":798,"children":799},"File I\u002FO and Logging (FIO)","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F1.index",[800,801,805,809,813,817,821],{"title":796,"path":797,"stem":798},{"title":802,"path":803,"stem":804},"DRD04-J. Do not log sensitive information","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002Fdrd04-j","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F2.drd04-j",{"title":806,"path":807,"stem":808},"DRD00. Do not store sensitive information on external storage (SD card) unless encrypted first","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002Fdrd00-do-not-store-sensitive-information-on-external-storage-sd-card-unless-encrypted-first","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F3.drd00-do-not-store-sensitive-information-on-external-storage-sd-card-unless-encrypted-first",{"title":810,"path":811,"stem":812},"DRD11. Ensure that sensitive data is kept secure","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002Fdrd11-ensure-that-sensitive-data-is-kept-secure","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F4.drd11-ensure-that-sensitive-data-is-kept-secure",{"title":814,"path":815,"stem":816},"DRD12. Do not trust data from world-writable files","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002Fdrd12-do-not-trust-data-from-world-writable-files","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F5.drd12-do-not-trust-data-from-world-writable-files",{"title":818,"path":819,"stem":820},"DRD23. Do not use world readable or writeable to share files between apps","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002Fdrd23-do-not-use-world-readable-or-writeable-to-share-files-between-apps","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F6.drd23-do-not-use-world-readable-or-writeable-to-share-files-between-apps",{"title":822,"path":823,"stem":824},"DRD28 Do not load world-writable libraries","\u002Fandroid-secure-coding-standard\u002Frules\u002Ffile-io-and-logging-fio\u002Fdrd28-do-not-load-world-writable-libraries","3.android-secure-coding-standard\u002F3.rules\u002F11.file-io-and-logging-fio\u002F7.drd28-do-not-load-world-writable-libraries",{"title":826,"path":174,"stem":827},"Floating Point (FLP)","3.android-secure-coding-standard\u002F3.rules\u002F12.floating-point-flp",{"title":829,"path":210,"stem":830},"Input Validation and Data Sanitization (IDS)","3.android-secure-coding-standard\u002F3.rules\u002F13.input-validation-and-data-sanitization-ids",{"title":832,"path":180,"stem":833},"Integers (INT)","3.android-secure-coding-standard\u002F3.rules\u002F14.integers-int",{"title":835,"path":836,"stem":837,"children":838},"Intent (ITT)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fintent-itt","3.android-secure-coding-standard\u002F3.rules\u002F15.intent-itt\u002F1.index",[839,840,844,848],{"title":835,"path":836,"stem":837},{"title":841,"path":842,"stem":843},"DRD03-J. Do not broadcast sensitive information using an implicit intent","\u002Fandroid-secure-coding-standard\u002Frules\u002Fintent-itt\u002Fdrd03-j","3.android-secure-coding-standard\u002F3.rules\u002F15.intent-itt\u002F2.drd03-j",{"title":845,"path":846,"stem":847},"DRD21-J. Always pass explicit intents to a PendingIntent","\u002Fandroid-secure-coding-standard\u002Frules\u002Fintent-itt\u002Fdrd21-j","3.android-secure-coding-standard\u002F3.rules\u002F15.intent-itt\u002F3.drd21-j",{"title":849,"path":850,"stem":851},"DRD06. Verify the caller of intents before acting on them","\u002Fandroid-secure-coding-standard\u002Frules\u002Fintent-itt\u002Fdrd06-verify-the-caller-of-intents-before-acting-on-them","3.android-secure-coding-standard\u002F3.rules\u002F15.intent-itt\u002F4.drd06-verify-the-caller-of-intents-before-acting-on-them",{"title":853,"path":216,"stem":854},"Java Native Interface (JNI)","3.android-secure-coding-standard\u002F3.rules\u002F16.java-native-interface-jni",{"title":856,"path":222,"stem":857},"Locking (LCK)","3.android-secure-coding-standard\u002F3.rules\u002F17.locking-lck",{"title":859,"path":186,"stem":860},"Memory Management (MEM)","3.android-secure-coding-standard\u002F3.rules\u002F18.memory-management-mem",{"title":862,"path":228,"stem":863},"Methods (MET)","3.android-secure-coding-standard\u002F3.rules\u002F19.methods-met",{"title":865,"path":866,"stem":867,"children":868},"Miscellaneous (MSC)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc","3.android-secure-coding-standard\u002F3.rules\u002F20.miscellaneous-msc\u002F1.index",[869,870,874,878,882,886],{"title":865,"path":866,"stem":867},{"title":871,"path":872,"stem":873},"DRD10-X. Do not release apps that are debuggable","\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fdrd10-x","3.android-secure-coding-standard\u002F3.rules\u002F20.miscellaneous-msc\u002F2.drd10-x",{"title":875,"path":876,"stem":877},"DRD15-J. Consider privacy concerns when using Geolocation API","\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fdrd15-j","3.android-secure-coding-standard\u002F3.rules\u002F20.miscellaneous-msc\u002F3.drd15-j",{"title":879,"path":880,"stem":881},"DRD26-J. For OAuth, use a secure Android method to deliver access tokens","\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fdrd26-j","3.android-secure-coding-standard\u002F3.rules\u002F20.miscellaneous-msc\u002F4.drd26-j",{"title":883,"path":884,"stem":885},"DRD27-J. For OAuth, use an explicit intent method to deliver access tokens","\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fdrd27-j","3.android-secure-coding-standard\u002F3.rules\u002F20.miscellaneous-msc\u002F5.drd27-j",{"title":887,"path":888,"stem":889},"DRD25. To request user permission for OAuth, identify relying party and its permissions scope","\u002Fandroid-secure-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fdrd25-to-request-user-permission-for-oauth-identify-relying-party-and-its-permissions-scope","3.android-secure-coding-standard\u002F3.rules\u002F20.miscellaneous-msc\u002F6.drd25-to-request-user-permission-for-oauth-identify-relying-party-and-its-permissions-scope",{"title":891,"path":892,"stem":893,"children":894},"Network - SSL\u002FTLS (NET)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fnetwork-ssltls-net","3.android-secure-coding-standard\u002F3.rules\u002F21.network-ssltls-net\u002F1.index",[895,896,900],{"title":891,"path":892,"stem":893},{"title":897,"path":898,"stem":899},"DRD23-J. Do not use loopback when handling sensitive data","\u002Fandroid-secure-coding-standard\u002Frules\u002Fnetwork-ssltls-net\u002Fdrd23-j","3.android-secure-coding-standard\u002F3.rules\u002F21.network-ssltls-net\u002F2.drd23-j",{"title":901,"path":902,"stem":903},"DRD19. Properly verify server certificate on SSL\u002FTLS","\u002Fandroid-secure-coding-standard\u002Frules\u002Fnetwork-ssltls-net\u002Fdrd19-properly-verify-server-certificate-on-ssltls","3.android-secure-coding-standard\u002F3.rules\u002F21.network-ssltls-net\u002F3.drd19-properly-verify-server-certificate-on-ssltls",{"title":905,"path":234,"stem":906},"Numeric Types and Operations (NUM)","3.android-secure-coding-standard\u002F3.rules\u002F22.numeric-types-and-operations-num",{"title":908,"path":240,"stem":909},"Object Orientation (OBJ)","3.android-secure-coding-standard\u002F3.rules\u002F23.object-orientation-obj",{"title":911,"path":912,"stem":913,"children":914},"Permission (PER)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fpermission-per","3.android-secure-coding-standard\u002F3.rules\u002F24.permission-per\u002F1.index",[915,916,920,924,928],{"title":911,"path":912,"stem":913},{"title":917,"path":918,"stem":919},"DRD05-J. Do not grant URI permissions on implicit intents","\u002Fandroid-secure-coding-standard\u002Frules\u002Fpermission-per\u002Fdrd05-j","3.android-secure-coding-standard\u002F3.rules\u002F24.permission-per\u002F2.drd05-j",{"title":921,"path":922,"stem":923},"DRD14-J. Check that a calling app has appropriate permissions before responding","\u002Fandroid-secure-coding-standard\u002Frules\u002Fpermission-per\u002Fdrd14-j","3.android-secure-coding-standard\u002F3.rules\u002F24.permission-per\u002F3.drd14-j",{"title":925,"path":926,"stem":927},"DRD16-X. Explicitly define the exported attribute for private components","\u002Fandroid-secure-coding-standard\u002Frules\u002Fpermission-per\u002Fdrd16-x","3.android-secure-coding-standard\u002F3.rules\u002F24.permission-per\u002F4.drd16-x",{"title":929,"path":930,"stem":931},"DRD20-C. Specify permissions when creating files via the NDK","\u002Fandroid-secure-coding-standard\u002Frules\u002Fpermission-per\u002Fdrd20-c","3.android-secure-coding-standard\u002F3.rules\u002F24.permission-per\u002F5.drd20-c",{"title":933,"path":270,"stem":934},"Platform Security (SEC)","3.android-secure-coding-standard\u002F3.rules\u002F25.platform-security-sec",{"title":936,"path":192,"stem":937},"Preprocessor (PRE)","3.android-secure-coding-standard\u002F3.rules\u002F26.preprocessor-pre",{"title":939,"path":246,"stem":940},"Serialization (SER)","3.android-secure-coding-standard\u002F3.rules\u002F27.serialization-ser",{"title":942,"path":252,"stem":943},"Thread APIs (THI)","3.android-secure-coding-standard\u002F3.rules\u002F28.thread-apis-thi",{"title":945,"path":258,"stem":946},"Thread-Safety Miscellaneous (TSM)","3.android-secure-coding-standard\u002F3.rules\u002F29.thread-safety-miscellaneous-tsm",{"title":948,"path":264,"stem":949},"Visibility and Atomicity (VNA)","3.android-secure-coding-standard\u002F3.rules\u002F30.visibility-and-atomicity-vna",{"title":951,"path":952,"stem":953,"children":954},"WebView (WBV)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fwebview-wbv","3.android-secure-coding-standard\u002F3.rules\u002F31.webview-wbv\u002F1.index",[955,956,960,964],{"title":951,"path":952,"stem":953},{"title":957,"path":958,"stem":959},"DRD02-J. Do not allow WebView to access sensitive local resource through file scheme","\u002Fandroid-secure-coding-standard\u002Frules\u002Fwebview-wbv\u002Fdrd02-j","3.android-secure-coding-standard\u002F3.rules\u002F31.webview-wbv\u002F2.drd02-j",{"title":961,"path":962,"stem":963},"DRD13. Do not provide addJavascriptInterface method access in a WebView which could contain untrusted content. (API level JELLY_BEAN or below)","\u002Fandroid-secure-coding-standard\u002Frules\u002Fwebview-wbv\u002Fdrd13-do-not-provide-addjavascriptinterface-method-access-in-a-webview-which-could-contain-untrusted-content-api-level-jelly_bean-or-below","3.android-secure-coding-standard\u002F3.rules\u002F31.webview-wbv\u002F3.drd13-do-not-provide-addjavascriptinterface-method-access-in-a-webview-which-could-contain-untrusted-content-api-level-jelly_bean-or-below",{"title":965,"path":966,"stem":967},"DRD22. Do not cache sensitive information","\u002Fandroid-secure-coding-standard\u002Frules\u002Fwebview-wbv\u002Fdrd22-do-not-cache-sensitive-information","3.android-secure-coding-standard\u002F3.rules\u002F31.webview-wbv\u002F4.drd22-do-not-cache-sensitive-information",{"title":275,"path":969,"stem":970,"children":971},"\u002Fandroid-secure-coding-standard\u002Frecommendations","3.android-secure-coding-standard\u002F4.recommendations\u002F01.index",[972,973,975,978,980,982,984,986,988,990,992,994,996,998,1000,1002,1004,1006,1008,1010,1012,1014,1016,1018,1020,1022,1024,1026,1028,1030,1032],{"title":275,"path":969,"stem":970},{"title":731,"path":336,"stem":974},"3.android-secure-coding-standard\u002F4.recommendations\u002F02.application-programming-interfaces-api",{"title":976,"path":384,"stem":977},"Characters and Strings (STR)","3.android-secure-coding-standard\u002F4.recommendations\u002F03.characters-and-strings-str",{"title":737,"path":282,"stem":979},"3.android-secure-coding-standard\u002F4.recommendations\u002F04.component-security-cps",{"title":759,"path":390,"stem":981},"3.android-secure-coding-standard\u002F4.recommendations\u002F05.concurrency-con",{"title":762,"path":318,"stem":983},"3.android-secure-coding-standard\u002F4.recommendations\u002F06.cryptography-crp",{"title":784,"path":330,"stem":985},"3.android-secure-coding-standard\u002F4.recommendations\u002F07.declarations-and-initialization-dcl",{"title":787,"path":342,"stem":987},"3.android-secure-coding-standard\u002F4.recommendations\u002F08.environment-env",{"title":790,"path":348,"stem":989},"3.android-secure-coding-standard\u002F4.recommendations\u002F09.error-handling-err",{"title":793,"path":354,"stem":991},"3.android-secure-coding-standard\u002F4.recommendations\u002F10.expressions-exp",{"title":796,"path":288,"stem":993},"3.android-secure-coding-standard\u002F4.recommendations\u002F11.file-io-and-logging-fio",{"title":826,"path":360,"stem":995},"3.android-secure-coding-standard\u002F4.recommendations\u002F12.floating-point-flp",{"title":829,"path":396,"stem":997},"3.android-secure-coding-standard\u002F4.recommendations\u002F13.input-validation-and-data-sanitization-ids",{"title":832,"path":366,"stem":999},"3.android-secure-coding-standard\u002F4.recommendations\u002F14.integers-int",{"title":835,"path":294,"stem":1001},"3.android-secure-coding-standard\u002F4.recommendations\u002F15.intent-itt",{"title":853,"path":402,"stem":1003},"3.android-secure-coding-standard\u002F4.recommendations\u002F16.java-native-interface-jni",{"title":856,"path":408,"stem":1005},"3.android-secure-coding-standard\u002F4.recommendations\u002F17.locking-lck",{"title":859,"path":372,"stem":1007},"3.android-secure-coding-standard\u002F4.recommendations\u002F18.memory-management-mem",{"title":862,"path":414,"stem":1009},"3.android-secure-coding-standard\u002F4.recommendations\u002F19.methods-met",{"title":865,"path":324,"stem":1011},"3.android-secure-coding-standard\u002F4.recommendations\u002F20.miscellaneous-msc",{"title":891,"path":306,"stem":1013},"3.android-secure-coding-standard\u002F4.recommendations\u002F21.network-ssltls-net",{"title":905,"path":420,"stem":1015},"3.android-secure-coding-standard\u002F4.recommendations\u002F22.numeric-types-and-operations-num",{"title":908,"path":426,"stem":1017},"3.android-secure-coding-standard\u002F4.recommendations\u002F23.object-orientation-obj",{"title":911,"path":312,"stem":1019},"3.android-secure-coding-standard\u002F4.recommendations\u002F24.permission-per",{"title":933,"path":456,"stem":1021},"3.android-secure-coding-standard\u002F4.recommendations\u002F25.platform-security-sec",{"title":936,"path":378,"stem":1023},"3.android-secure-coding-standard\u002F4.recommendations\u002F26.preprocessor-pre",{"title":939,"path":432,"stem":1025},"3.android-secure-coding-standard\u002F4.recommendations\u002F27.serialization-ser",{"title":942,"path":438,"stem":1027},"3.android-secure-coding-standard\u002F4.recommendations\u002F28.thread-apis-thi",{"title":945,"path":444,"stem":1029},"3.android-secure-coding-standard\u002F4.recommendations\u002F29.thread-safety-miscellaneous-tsm",{"title":948,"path":450,"stem":1031},"3.android-secure-coding-standard\u002F4.recommendations\u002F30.visibility-and-atomicity-vna",{"title":951,"path":300,"stem":1033},"3.android-secure-coding-standard\u002F4.recommendations\u002F31.webview-wbv",{"title":1035,"path":1036,"stem":1037,"children":1038},"By Language","\u002Fandroid-secure-coding-standard\u002Fby-language","3.android-secure-coding-standard\u002F5.by-language\u002F1.index",[1039,1040,1042,1063,1065,1086],{"title":1035,"path":1036,"stem":1037},{"title":469,"path":468,"stem":1041},"3.android-secure-coding-standard\u002F5.by-language\u002F2.android-only",{"title":475,"path":1043,"stem":1044,"children":1045},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fc-coding-language","3.android-secure-coding-standard\u002F5.by-language\u002F3.c-coding-language\u002F1.index",[1046,1047,1051,1055,1059],{"title":475,"path":1043,"stem":1044},{"title":1048,"path":1049,"stem":1050},"Applicable in Principle to Android (C Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fc-coding-language\u002Fapplicable-in-principle-to-android-c-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F3.c-coding-language\u002F2.applicable-in-principle-to-android-c-rulesrecomendations",{"title":1052,"path":1053,"stem":1054},"Applicable to Android (C Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fc-coding-language\u002Fapplicable-to-android-c-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F3.c-coding-language\u002F3.applicable-to-android-c-rulesrecomendations",{"title":1056,"path":1057,"stem":1058},"Not Applicable to Android (C Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fc-coding-language\u002Fnot-applicable-to-android-c-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F3.c-coding-language\u002F4.not-applicable-to-android-c-rulesrecomendations",{"title":1060,"path":1061,"stem":1062},"Unknown Applicability (C Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fc-coding-language\u002Funknown-applicability-c-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F3.c-coding-language\u002F5.unknown-applicability-c-rulesrecomendations",{"title":481,"path":480,"stem":1064},"3.android-secure-coding-standard\u002F5.by-language\u002F4.cpp-coding-language",{"title":487,"path":1066,"stem":1067,"children":1068},"\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fjava-coding-language","3.android-secure-coding-standard\u002F5.by-language\u002F5.java-coding-language\u002F1.index",[1069,1070,1074,1078,1082],{"title":487,"path":1066,"stem":1067},{"title":1071,"path":1072,"stem":1073},"Applicable in Principle to Android (Java Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fjava-coding-language\u002Fapplicable-in-principle-to-android-java-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F5.java-coding-language\u002F2.applicable-in-principle-to-android-java-rulesrecomendations",{"title":1075,"path":1076,"stem":1077},"Applicable to Android (Java Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fjava-coding-language\u002Fapplicable-to-android-java-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F5.java-coding-language\u002F3.applicable-to-android-java-rulesrecomendations",{"title":1079,"path":1080,"stem":1081},"Not Applicable to Android (Java Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fjava-coding-language\u002Fnot-applicable-to-android-java-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F5.java-coding-language\u002F4.not-applicable-to-android-java-rulesrecomendations",{"title":1083,"path":1084,"stem":1085},"Unknown Applicability to Android (Java Rules\u002FRecomendations)","\u002Fandroid-secure-coding-standard\u002Fby-language\u002Fjava-coding-language\u002Funknown-applicability-to-android-java-rulesrecomendations","3.android-secure-coding-standard\u002F5.by-language\u002F5.java-coding-language\u002F5.unknown-applicability-to-android-java-rulesrecomendations",{"title":493,"path":492,"stem":1087},"3.android-secure-coding-standard\u002F5.by-language\u002F6.xml",{"title":1089,"path":1090,"stem":1091,"children":1092},"Back Matter","\u002Fandroid-secure-coding-standard\u002Fback-matter","3.android-secure-coding-standard\u002F6.back-matter\u002F1.index",[1093,1094,1098],{"title":1089,"path":1090,"stem":1091},{"title":1095,"path":1096,"stem":1097},"AA. Bibliography","\u002Fandroid-secure-coding-standard\u002Fback-matter\u002Faa-bibliography","3.android-secure-coding-standard\u002F6.back-matter\u002F2.aa-bibliography",{"title":1099,"path":1100,"stem":1101,"children":1102},"BB. Analyzers","\u002Fandroid-secure-coding-standard\u002Fback-matter\u002Fbb-analyzers","3.android-secure-coding-standard\u002F6.back-matter\u002F3.bb-analyzers\u002F1.index",[1103,1104,1108],{"title":1099,"path":1100,"stem":1101},{"title":1105,"path":1106,"stem":1107},"CodeSonar","\u002Fandroid-secure-coding-standard\u002Fback-matter\u002Fbb-analyzers\u002Fcodesonar","3.android-secure-coding-standard\u002F6.back-matter\u002F3.bb-analyzers\u002F2.codesonar",{"title":1109,"path":1110,"stem":1111},"CodeSonar_V","\u002Fandroid-secure-coding-standard\u002Fback-matter\u002Fbb-analyzers\u002Fcodesonar_v","3.android-secure-coding-standard\u002F6.back-matter\u002F3.bb-analyzers\u002F3.codesonar_v",{"title":1113,"path":1114,"stem":1115,"children":1116},"Admin","\u002Fandroid-secure-coding-standard\u002Fadmin","3.android-secure-coding-standard\u002F7.admin\u002F01.index",[1117,1118,1122,1126,1130,1134,1138,1142,1146,1149,1153,1157,1161,1165,1168,1172],{"title":1113,"path":1114,"stem":1115},{"title":1119,"path":1120,"stem":1121},"About the OurCS Workshop","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fabout-the-ourcs-workshop","3.android-secure-coding-standard\u002F7.admin\u002F02.about-the-ourcs-workshop",{"title":1123,"path":1124,"stem":1125},"Android Applicability Summary","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fandroid-applicability-summary","3.android-secure-coding-standard\u002F7.admin\u002F03.android-applicability-summary",{"title":1127,"path":1128,"stem":1129},"Android (DRD)","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fandroid-drd","3.android-secure-coding-standard\u002F7.admin\u002F04.android-drd",{"title":1131,"path":1132,"stem":1133},"Avoid having unreachable code","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Favoid-having-unreachable-code","3.android-secure-coding-standard\u002F7.admin\u002F05.avoid-having-unreachable-code",{"title":1135,"path":1136,"stem":1137},"C Space Change History Log","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fc-space-change-history-log","3.android-secure-coding-standard\u002F7.admin\u002F06.c-space-change-history-log",{"title":1139,"path":1140,"stem":1141},"Copy of Rule Template","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fcopy-of-rule-template","3.android-secure-coding-standard\u002F7.admin\u002F07.copy-of-rule-template",{"title":1143,"path":1144,"stem":1145},"C++ Space Change History Log","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fcpp-space-change-history-log","3.android-secure-coding-standard\u002F7.admin\u002F08.cpp-space-change-history-log",{"title":1147,"path":577,"stem":1148},"Dictionary of Labels","3.android-secure-coding-standard\u002F7.admin\u002F09.dictionary-of-labels",{"title":1150,"path":1151,"stem":1152},"How to Change Applicability When a Rules and Recommendations Change","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fhow-to-change-applicability-when-a-rules-and-recommendations-change","3.android-secure-coding-standard\u002F7.admin\u002F10.how-to-change-applicability-when-a-rules-and-recommendations-change",{"title":1154,"path":1155,"stem":1156},"Java Space Change History Log","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fjava-space-change-history-log","3.android-secure-coding-standard\u002F7.admin\u002F11.java-space-change-history-log",{"title":1158,"path":1159,"stem":1160},"Labels in this Space","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Flabels-in-this-space","3.android-secure-coding-standard\u002F7.admin\u002F12.labels-in-this-space",{"title":1162,"path":1163,"stem":1164},"Perl Space Change History Log","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Fperl-space-change-history-log","3.android-secure-coding-standard\u002F7.admin\u002F13.perl-space-change-history-log",{"title":1166,"path":593,"stem":1167},"Resources for new Android app secure coding rules and guidelines","3.android-secure-coding-standard\u002F7.admin\u002F14.resources-for-new-android-app-secure-coding-rules-and-guidelines",{"title":1169,"path":1170,"stem":1171},"Rule Template","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Frule-template","3.android-secure-coding-standard\u002F7.admin\u002F15.rule-template",{"title":1173,"path":1174,"stem":1175},"Rules Applicable for Both the Android Platform and Other Platforms","\u002Fandroid-secure-coding-standard\u002Fadmin\u002Frules-applicable-for-both-the-android-platform-and-other-platforms","3.android-secure-coding-standard\u002F7.admin\u002F16.rules-applicable-for-both-the-android-platform-and-other-platforms",1775657764626]