第一步:首先生成乙個500位的陣列 駝峰型別的元素 用作檔名 eg:asdfdfgsd
import random
import string
first = "abcdefghijklmnopqrstuvwxyz"
second = "abcdefghijklmnopqrstuvwxyz"
number = "345"
index = 0
array =
for i in range(500):
final=(random.choice(first))
index = random.randint(3, 5)
for i in range(index):
final+=(random.choice(second))
final += (random.choice(first))
for i in range(index):
final+=(random.choice(second))
print (array)
第二步:
用上邊生成的陣列來建立對應的.h和.m檔案
# -*- coding: utf-8 -*-
import random
importos
import string
#建立.h檔案
def text_createh(filenmae,msg,msg1,propertynumber,methodarray,msg3):
full_path = '/users/zhoujinglin/desktop/python-h-m/'+ filenmae + '.h'
file = open(full_path, 'w')
file.write(msg)
file.write(msg1)
proprynamearray =
for index in range(1,propertynumber):
proprynamearray = list(set(proprynamearray))
for propertyname in proprynamearray:
file.write('@property(nonatomic,strong)'+random.choice(classarray)+' * '+propertyname+';\n')
file.write('\n\n')
for methodname in methodarray:
file.write('- (void)pushto'+methodname+'vc:(nsdictionary *)info;\n')
file.write(msg3)
file.close()
('done')
#建立.m檔案
def text_createm(filenmae,msg,msg1,methodarray,msg3):
full_path = '/users/zhoujinglin/desktop/python-h-m/'+ filenmae + '.m'
file = open(full_path, 'w')
file.write(msg)
file.write(msg1)
for methodname in methodarray:
file.write('- (void)pushto'+methodname+'vc:(nsdictionary *)info\n\n\n')
file.write(msg3)
file.close()
('done')
classarray = ['nsstring','uilabel','nsdictionary','nsdata','uiscrollview','uiview']
array = ['hwxrfvrj', 'qnzduqbtdd', 'pvcrwltqhf', 'uvdhdbjn', 'suntmytxvyzg', 'cvlxwbipbp', 'gzrdyzibimvz', 'cqsjqmmgsp', 'oxaaeuwjhasc', 'njiardrvwgbi', 'ncculmltpljq', 'apoqqrll', 'gkgokdyvjb', 'eblldkvouplj', 'kfdrfvnw', 'sfhyhobftc', 'smrubyoc', 'yzcccvxmpmit', 'omqvahpxat', 'xzytsuyvyd', 'mjfornnnyi', 'zvjhuidogs', 'bzfrxzseahxc', 'pycycwfjtpny', 'xvngtosedljr', 'dktiacbucd', 'aqbplnuodc', 'mzkvgzuala', 'kdwzioej', 'aaynatupqcfd', 'iyvwhzvtjc', 'umijgmsy', 'aoayndxxghym']
array = list(set(array))
for name in array:
number = random.randint(3, 10)
methodarray =
for i in range(1,5):
methodarray = list(set(methodarray))#陣列去重
text_createh(name+'viewcontroller', '#import \n','@inte***ce '+name+ 'viewcontroller:'+ 'uiviewcontroller\n\n',number,methodarray,'\n\n@end')
text_createm(name+'viewcontroller', '#import "'+name+'viewcontroller.h"\n\n''@inte***ce '+ name+'viewcontroller()\n\n @end\n\n','@implementation '+name+'viewcontroller\n\n- (void)viewdidload \n\n',methodarray,'\n\n@end')
ios開發技術,提交審核討論群 加qq群:695614778 一起討論
iOS 馬甲包過包注意事項
版本控制 由於開發過程中核心 會隨著需業務需求的改變,需要考慮做好版本控制,個人認為可以將核心 通過git進行版本控制。避免 重複 的問題 蘋果審核規則4.3 隨著核心業務功能的增加和 量的增加,核心 也需要考慮 重複 問題,個人建議可以將核心 打包成.a的sdk,只暴露方法呼叫的.h檔案。線上版本...
iOS審核馬甲包分析和過審因素
1.1 測試新功能 吸流量 1.2 做活動測試 1.3 買流量衝榜 2.1 包質量 產品質量 乙個好的產品是全新開發的,而不是各種舊 拼湊的 過包的前提因素就是包的濫用程度 和 處理程度 2.2 包的 優化 根據個人經驗,馬甲包要做到不同,是需要針對每乙個包都進行 混淆和篡改的,排除邏輯,要做到內容...
iOS(馬甲包)開發如何避免安全隱患
用抓包工具可以抓取手機通訊介面的資料。以charles為例,用charles可以獲取http的所有明文資料,配置好它的證書後就可以模擬中間人攻擊,獲取https加密前的明文資料。先簡要地說下什麼是中間人攻擊 客戶端 我是客戶端,給我你的公鑰 服務端 被中間人截獲 所以現在是 客戶端 中間人 然後中間...