美文网首页
Guideline 2.5.2 - Performance -

Guideline 2.5.2 - Performance -

作者: 竹间丨 | 来源:发表于2018-03-09 12:05 被阅读0次

    之前只打包iOS APP,没遇到这个错误,打包UNITY导出来的游戏项目,送审的时候就出现了这个问题
    上网查了一下,就是热更的问题,关键命令

    nm -n xxx.a >> xxx.txt
    

    通过这个命令可以将方法名导入到TXT文件中,帮助查找到热更相关代码dlopen() dlsym(),一个一个查找太慢就写了个脚本

    #!/bin/sh
    echo "请输入需要检测的工程路径"
    read path
    if [ ${#path} = 0 ]
        then
            echo "请在.sh文件后面添加路径"
            exit
        fi
    cd $path
    echo "当前路径为`pwd`" 
    #搜索目录下面的.a文件
    for i in `find . -name *.a`; do
        # echo $i
        i_=${i##*/}
        # echo $i_
        i_=${i_%.a}
        # echo $i_
        nm -n $i >> "$i_.txt"
        grep 'dlopen' "$i_.txt" >/dev/null 2>&1 || grep 'dlsym' "$i_.txt" >/dev/null 2>&1
        if [[ $? == 0 ]]; then
            echo "$i_ 中有dlopen dlsym"
        fi
        rm $i_.txt
    done
    #搜索目录下面的framework
    for i in `find *.framework/ */*.framework/  -size +100k`; do
        # echo $i
        i_=${i##*/}
        # echo $i_
        nm -n $i >> "$i_.txt"
        grep 'dlopen' "$i_.txt" >/dev/null 2>&1 || grep 'dlsym' "$i_.txt" >/dev/null 2>&1
        if [[ $? == 0 ]]; then
            echo "$i_ 中有dlopen dlsym"
        fi
        rm $i_.txt
    done
    

    相关文章

      网友评论

          本文标题:Guideline 2.5.2 - Performance -

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