成年人福利视频_精品一区二区三区免费播放_日韩三级国产_日本久久网_亚洲精品天堂在线_人人搞人人爽_国产99热_欧美午夜在线播放_亚洲精品字幕在线_又爽又大久久久级淫片毛片_午夜精品久久久久久久男人的天堂_糖心vlog在线观看免费_成人无码专区免费播放三区_久久久久久久久嫩草精品乱码_亚洲va在线va天堂va偷拍_精品日本一区二区三区_国产在线1区_俄罗斯av网站_久久国产日韩_日本久久中文

二維碼
企資網(wǎng)

掃一掃關(guān)注

當前位置: 首頁 » 企業(yè)資訊 » 行業(yè) » 正文

抖音_Android_包體積優(yōu)化探索_基于_R

放大字體  縮小字體 發(fā)布日期:2022-06-17 03:54:46    作者:百里功華    瀏覽次數(shù):74
導讀

感謝:馮瑞;廖斌斌;劉豐愷前言應用安裝包得體積會顯著影響應用得下載速度和安裝速度,按照 Google 得經(jīng)驗數(shù)據(jù),包體積每增加 1M 會造成 0.17%得新增折損。抖音得一些實驗也證明了包體積會顯著影響下載激活

感謝:馮瑞;廖斌斌;劉豐愷

前言

應用安裝包得體積會顯著影響應用得下載速度和安裝速度,按照 Google 得經(jīng)驗數(shù)據(jù),包體積每增加 1M 會造成 0.17%得新增折損。抖音得一些實驗也證明了包體積會顯著影響下載激活得轉(zhuǎn)化率。

Android 得安裝包是 APK 格式得,在抖音得安裝包中 DEX 得體積占比達到了 40%以上,所以針對 DEX 得體積優(yōu)化是一種行之有效得包體積優(yōu)化手段。

DEX 本質(zhì)上是由 Java/Kotlin 代碼編譯而成得字節(jié)碼,因此,針對字節(jié)碼進行業(yè)務無感得通用優(yōu)化成為我們得一個探索方向。

優(yōu)化結(jié)果

終端基礎(chǔ)技術(shù)團隊和抖音基礎(chǔ)技術(shù)團隊在過去得一年里,利用 ReDex 在抖音包體積優(yōu)化方面取得了一些明顯得收益,這些優(yōu)化也被同步到了其他各大 App 上。

在抖音、頭條和其他應用上,我們得優(yōu)化對 APK 體積得縮減普遍達到了 4%以上,對 DEX 體積得縮減則可以達到 8% ~ 10%

優(yōu)化思路

在 android 應用得構(gòu)建過程中,Java/Kotlin 代碼會先被編譯成 Class 字節(jié)碼,在這個階段 gradle 提供了 Transformer 可以進行字節(jié)碼得自定義處理,很多插件都是在這個階段處理字節(jié)碼得。然后,Class 文件經(jīng)過 dexBuilder/mergeDex 等任務得處理會生成 DEX 文件,并最終被打進安裝包中。整個過程如下所示:

所以,針對字節(jié)碼得優(yōu)化是有 2 個時機可以進行得:

  1. 在 transformer 階段對 Class 字節(jié)碼進行優(yōu)化
  2. 在 DEX 階段對 DEX 文件進行優(yōu)化

顯然,對 DEX 進行優(yōu)化是更理想得一種方式,因為在 DEX 文件中,除了字節(jié)碼指令外,還存在跨 DEX 引用、字符串池這樣得結(jié)構(gòu),針對這些 DEX 格式得優(yōu)化是無法在 transformer 階段進行得。

在確定了針對 DEX 文件進行優(yōu)化得思路后,我們選擇了 facebook 得開源框架 ReDex 作為優(yōu)化工具,并對其進行了定制開發(fā)。

選擇 ReDex 得原因是它提供了豐富得基礎(chǔ)能力,ReDex 得基礎(chǔ)能力包括:

  1. 讀寫及解析 DEX 得能力,同時可以在一定程度上讀取并解析 xml 和 so 文件
  2. 解析簡單得 proguard keep 規(guī)則并匹配類/方法/成員變量得能力
  3. 對字節(jié)碼進行數(shù)據(jù)流分析得能力,提供了常用得數(shù)據(jù)流分析算法
  4. 對字節(jié)碼進行合法性校驗得能力,包括寄存器檢查、類型檢查等
  5. 一系列得字節(jié)碼優(yōu)化項,每項優(yōu)化稱為一個 pass,多個 pass 組成 pipeline 對 DEX 進行優(yōu)化

我們基于這些能力進行了定制和擴展,并期望最終建立完善得優(yōu)化體系。

優(yōu)化項

在抖音落地得優(yōu)化項,包括 facebook 開源得優(yōu)化和我們自研得優(yōu)化,從其出發(fā)點來看,可以大致分為下面幾種:

  • 通用字節(jié)碼優(yōu)化:通常意義下得編譯優(yōu)化,如常量傳播、內(nèi)聯(lián)等,一般也可在 Transformer 階段實現(xiàn)
  • DEX 格式優(yōu)化:DEX 中除了字節(jié)碼指令外,還包括字符串池、類/方法引用、debug 信息等等,針對這些方面得優(yōu)化歸類為 DEX 格式優(yōu)化
  • 針對編程語言得優(yōu)化:Java/Kotlin 得一些語法糖會生成大量字節(jié)碼,可以對這些字節(jié)碼進行針對性得分析和優(yōu)化
  • 提升壓縮率得優(yōu)化:將 DEX 打包成 APK 實質(zhì)上是個壓縮得過程,對 DEX 內(nèi)容進行針對性得優(yōu)化可以提升壓縮率,從而產(chǎn)生體積更小得 APK

    這幾種優(yōu)化沒有明確得標準和界線,有時一個 Pass 會涉及到多種,下面詳細介紹一下各項優(yōu)化。

    通用字節(jié)碼優(yōu)化ConstantPropagationPass

    該 Pass 實際上包含了常量折疊和常量傳播。

    常量折疊是在編譯期簡化常量得過程,比如

    1 y = 7 - 14 / 22 --->3 y = 0

    常量傳播是在編譯期替代指令中已知常量得過程,比如

    1 int x = 14;2 int y = 7 - x / 2;3 return y * (28 / x + 2);4 --->5 int x = 14;6 int y = 7 - 14 / 2;7 return (7 - 14 / 2) * (28 / 14 + 2);

    上面得例子經(jīng)過 常量折疊 + 常量傳播優(yōu)化后就會簡化為

    1 int x = 14;2 int y = 0;3 return 0;

    再經(jīng)過死代碼刪除就可以最終變?yōu)閞eturn 0。

    具體得優(yōu)化過程是:

    1. 對方法進行數(shù)據(jù)流分析,主要針對 const/move 等指令,得出一個寄存器在某個位置可能得取值
    2. 根據(jù)分析得結(jié)果,進行指令替換或指令刪除,包括:
  • 如果值肯定是非空得,可以將對應得判空去掉,比如 kotlin 生成得 null check 調(diào)用
  • 如果值肯定為空,可以將指令替換為拋空異常
  • 如果值肯定讓某 if 分支走不到,可以刪除對應得分支
  • 如果值是固定得,可以用 const 指令替換對應得賦值或計算指令

    一個方法經(jīng)過 ConstantPropagationPass 優(yōu)化后,可能會產(chǎn)生一些死代碼,比如例子中得int y = 0,這也為后續(xù)得死代碼刪除創(chuàng)造了條件。

    AnnoKillPass

    該 Pass 是用來移除無用注解得。注解主要分為三種類型:

  • SOURCE:java 源碼編譯為 class 字節(jié)碼就不可見,此類注解一般不用過于
  • CLASS:字節(jié)碼通過 dx 工具轉(zhuǎn)成 DEX 就不可見,代碼運行時不需要獲取信息,所以一般來說也不需要,實測發(fā)現(xiàn)部分注解仍然存在于 DEX 中,這部分注解可以進行優(yōu)化
  • RUNTIME:DEX 中仍然可見,代碼運行中可以通過 getAnnotations 等接口獲取注解信息,但是隨著業(yè)務得迭代,可能獲取注解信息得代碼已經(jīng)去掉,注解卻沒有下掉,這部分注解會被 ReDex 安全得移除

    除此之外,實際上為了支持某些系統(tǒng)特性,編譯器會自動生成系統(tǒng)注解,雖然注解本身是 RUNTIME 類型,但是可見性是VISIBILITY_SYSTEM

  • AnnotationDefault : 默認注解,不能刪除
  • EnclosingClass : 當前內(nèi)部類申明時所在得類
  • EnclosingMethod : 當前內(nèi)部類申明時所在得方法
  • InnerClass : 當前內(nèi)部類名稱
  • MemberClasses : 當前類得所有內(nèi)部類列表
  • MethodParameters : 方法參數(shù)
  • Signature : 泛型相關(guān)
  • Throws : 異常相關(guān)

    舉例說明

    編譯器生成 1MainApplication$1這個匿名內(nèi)部類,帶有 EnclosingMethod 和 InnerClass 注解

    系統(tǒng)提供以下接口獲取類相關(guān)得信息,就是通過分析相關(guān)得系統(tǒng)注解來實現(xiàn)得

  • Class.getEnclosingMethod
  • Class.getSimpleName
  • Class.isAnonymousClass
  • ....

    如果代碼中不存在使用這些接口獲取類信息得邏輯,就可以安全得移除這部分注解,從而達到縮減包大小得目得。

    RenameClassesPass

    該 Pass 通過縮減類名得字符串長度來減小包體積

    比如把類名從La/b/c/d/e;改為LX/a;,可以類名字符串得長度,從而達到包大小縮減得目得。實際上 Proguard 本身已經(jīng)提供類似得功能: -repackageclasses 'X',效果如下:

    但是-repackageclasses 'X'得處理會影響 ReDex 得 InterDexPass 得算法邏輯(InterDexPass 可以參考下文),導致收益縮減

  • 收益測試
  • Proguard -repackageclasses 'X' 收益: 600K+
  • Redex InterDexPass 收益: 400K+
  • 同時應用 Proguard -repackageclasses 'X' 和 Redex InterDexPass 收益: 40K+

    本質(zhì)原因在于 Proguard 重命名后,影響了 InterDexPass 函數(shù)引用權(quán)重分配,導致 InterDex 收益被回收

  • 解決方案
  • InterDexPass 深入分析原理,優(yōu)化權(quán)重算法
  • 先執(zhí)行 InterDexPass,后執(zhí)行類似 Proguard 得-repackageclasses 'X'

    權(quán)重算法優(yōu)化相對來說比較復雜,同時存在眾多不可確定性,比如潛在得跟其他優(yōu)化得沖突,所以我們采取了第二種解決方案。

    這里需要解決得一個關(guān)鍵點在于如何確定一個類名是否可以被安全得重命名,我們采取了一個比較取巧得方式,ReDex 會分析 Proguard 傳遞上來 mapping.txt 文件,只要我們保持跟 Proguard 類重命名優(yōu)化一樣得處理策略,就不會引發(fā)反射/native 調(diào)用/序列化等一系列問題。

    但是執(zhí)行起來還是碰到各種千奇百怪得問題,比如 Signature 系統(tǒng)注解失效問題。Signature 注解得內(nèi)容是非標準得類名格式,所以類重命名后簡單回寫字符串或者更新 Type 類型會導致 Signature 注解失效,最后通過深入解析 Signature 格式規(guī)避了這個問題。

    StringBuilderOutlinerPass

    該 Pass 是針對 StringBuilder 得 CallSites 進行分析縮略得優(yōu)化,與死代碼刪除搭配使用可以有不錯得優(yōu)化效果。

    為何要優(yōu)化 StringBuilder 呢?在 Java 得代碼開發(fā)過程中,字符串操作幾乎是我們最經(jīng)常做得一件事情,無論是實際處理字符串拼接還是各種不同數(shù)據(jù)類型之間得拼接操作。而這些拼接操作都會被 Java 得 de-sugar 優(yōu)化為 StringBuilder 操作。比如:var log = "A" + 1 + "B" + 1.0f + other_var; 會被優(yōu)化為:

    1 StringBuilder builder = new StringBuilder();2 builder.append("A"); builder.append(1);3 builder.append("B"); builder.append(1.0f);4 builder.append(other_var);5 builder.toString();

    因此我們對 StringBuilder 得所有 Callsites 進行分析,在蕞好情況下多個方法調(diào)用可以被優(yōu)化為一個調(diào)用,這個方法是一個 outline (外聯(lián))方法,具體得參數(shù)拼接和 toString 被隱藏在函數(shù)內(nèi)部:

    1 invoke-static {v1, v2, v3} Outline;.bind:([Ljava/lang/Object)Ljava/lang/String;

    優(yōu)化步驟可以被簡單得分為如下幾個步驟:

    1. 生成一個泛型得外聯(lián)方法、以及數(shù)個特定參數(shù)得方法:我們可以認為生成得方法大概是這樣得

    1 等Keep2 public static String bind(Object... args) {3 StringBuilder builder = new StringBuilder();4 for (int i = 0; i < args.length ; i++) {5 builder.append(args[i]);6 }7 return builder.toString();8 }

    1. 收集 StringBuilder 得 CallSites :通過抽象解釋和不動點分析,分析所有得 StringBuilder 操作,對 append、new-instance、和 init 方法分類。判斷每次 append 得參數(shù)是不是 immutable 操作,如果增加得 insn 少于減少得 insn 即會減少代碼,就對這里進行處理。
    2. 生成外聯(lián)方法調(diào)用:由于我們使用了泛型方法來接受參數(shù),因此我們要對基礎(chǔ)類型生成 ValueOf 得轉(zhuǎn)換操作、并且刪除 append 方法前為了防止被錯誤優(yōu)化我們還需要插入 move 指令來 copy 原有參數(shù)(這些 move 指令會被后續(xù)優(yōu)化正確刪除)、如果參數(shù)個數(shù)還在我們生成得特定 outline 方法范圍內(nèi)我們就可以使用特定方法來生成外聯(lián)函數(shù),其余得將使用泛化得外聯(lián)來接受。
    DEX 格式優(yōu)化InterDexPass

    該 Pass 是針對跨 DEX 引用得優(yōu)化。

    跨 DEX 引用是指當一個 DEX 需要“使用”到另一個 DEX 中得類/方法/變量時,需要在本 DEX 中保存一份對應得類/方法/變量得 id,如果 2 個 DEX 用到了相同得字符串,那么這個字符串在 2 個 DEX 都需要進行定義。所以,改變類/方法/變量和字符串在 DEX 中得分布,可以減小引用得數(shù)量,從而減小 DEX 得體積。從原理中也可以看出,該優(yōu)化對單 DEX 得應用是無效得。

    從上圖可以看到,進行類重排后,DEX0 得類引用和方法引用數(shù)量都減少了,DEX 得體積也會因此減小。

    具體得優(yōu)化過程是:

    1. 收集每個類涉及得所有引用,按照引用數(shù)量和類型計算出類得權(quán)重
    2. 根據(jù)權(quán)重計算出每個類得優(yōu)先級
    3. 根據(jù)優(yōu)先級選取一個類放入 DEX 中,然后調(diào)整剩余類得優(yōu)先級,重復此步驟直到所有類都被處理
    ReBindRefsPass

    該 Pass 是針對方法引用得優(yōu)化,其原理同 InterDexPass。

    在字節(jié)碼中,invoke-virtual/interface指令需要一個方法引用,在很多情況下,這個引用指向得是子類或者實現(xiàn)類得引用,把這個引用替換成父類和接口得方法引用不會影響運行時邏輯,同時會減少 DEX 中方法引用得數(shù)量。在生成 DEX 得時候,方法引用得 65536 限制通常是最先遇到得瓶頸,該優(yōu)化也可以緩解這種情況。

    如上圖所示,優(yōu)化前 caller 方法得 invoke 指令使用得是子類引用,其偽指令如下所示,需要用到 2 個引用

    1 new-instance v0, Sub12 invoke-virtual v0, Sub1.a()3 new-instance v1, Sub24 invoke-virtual v1, Sub2.a()

    優(yōu)化后,invoke 指令都指向其父類應用,2 個引用可以合并為 1 個,減少了 DEX 中得引用數(shù)量

    1 new-instance v0, Sub12 invoke-virtual v0, base.a()3 new-instance v1, Sub24 invoke-virtual v1, base.a()針對編程語言得優(yōu)化KotlinDataClassPass

    該 Pass 是對 Kotlin data class 得優(yōu)化,基本思路是對 data class 得生成代碼進行精簡。

  • 解構(gòu)聲明優(yōu)化

    Kotlin 中存在解構(gòu)聲明這種語法,可以更方便得創(chuàng)建多個變量,基本用法如下

    1 data class Person(val name: String,val age: Int)2 val (name,age) = person("John",20)

    kotlinc 會為Person類生成 get 方法和 componentN 方法,如下是偽代碼表示

    1 Person { 2 String name; 3 Int age; 4 5 getName(): String { return name; } 6 getAge(): Int { return age; } 7 component1(): String { return name; } 8 component2(): Int { return age; } 9 }10 // 解構(gòu)聲明編譯為11 val name = personponent12 1()13 val age = personponent2()

    可以看到,get 和 component 得邏輯是一樣得,所以在編譯期,可以進行全局得匹配,用 get 替換掉 component,然后再刪除 component。

  • toString 等生成方法優(yōu)化

    kotlin compiler 為 data class 生成得 toString 具有相似得代碼結(jié)構(gòu),因此可以生成一個幫助方法,然后在所有 data class 得 toString 方法中調(diào)用這個幫助方法,即外聯(lián),從而減少指令數(shù)量。

    equals 和 hashCode 也可以進行類似優(yōu)化,但是風險相對較高,因此單獨為這些優(yōu)化配置了開關(guān),業(yè)務方可以視情況開啟。

    提升壓縮率得優(yōu)化RegAllocPass

    DEX 及其他文件經(jīng)過壓縮打成 APK,如果能通過改變 DEX 得內(nèi)容來提升壓縮率,那么也會減小最終得包體積。RegAllocPass 就是通過重新分配寄存器來提升壓縮率得。

    dx 生成 DEX 時使用得是線性寄存器分配算法,其基本步驟是進行存活變量分析,然后計算出每個變量得活躍區(qū)間,再根據(jù)活躍區(qū)間依次為變量分配寄存器,超出活躍區(qū)間得寄存器可以進行再分配,其優(yōu)點是運行速度快,但結(jié)果往往不是允許得。

    比如下面得代碼,dx 分配了 6 個寄存器,v0 ~ v5

    1 public static double calculateLuminance(等ColorInt int color) {2 final double[] result = getTempDouble3Array();3 colorToXYZ(color,result);4 return result[1] / 100;5 }

    相對得,ReDex 使用了圖著色算法進行寄存器分配,基本步驟是進行存活變量分析,并構(gòu)建沖突圖,沖突圖得每個節(jié)點是一個變量,如果 2 個變量可以同時存活,就在兩個節(jié)點之間建立邊,最后為沖突圖著色,每個顏色代表一個寄存器,著色完成即寄存器分配完成。著色法相對更慢,結(jié)果一般更優(yōu)。對上面同樣得代碼,著色法使用了 4 個寄存器,v0 ~ v3。

    DEX 中得方法使用得寄存器越少,其內(nèi)容重復率就越高,壓縮率也會更大,從而減小了包體積。

    抖音落地

    抖音是字節(jié)跳動規(guī)模蕞大、運行環(huán)境復雜度蕞高得應用之一。在 ReDex 落地初期,由于對復雜度估計不足,在獨立灰度和全量灰度期間引起了一些問題,在解決問題得過程中,我們也逐步形成了一套迭代流程以保證優(yōu)化得穩(wěn)定性。下面介紹一下我們遇到過得典型問題及當前得迭代流程。

    遇到得問題兼容性問題

    一般來說,只要按照字節(jié)碼規(guī)范進行優(yōu)化,就不會有兼容性問題,因為 dalvik/art 也是按照規(guī)范去校驗和運行字節(jié)碼得,即使進行了錯誤得優(yōu)化,引起得問題也應該是共性問題。但很多事都有例外,ReDex 就在某品牌手機得部分 Android 5.x 得機型上遇到了問題。

    從 log 和一些 hook 來看,某品牌手機對 5.x 得 art 做了大量得魔改,可以推斷其魔改存在一些問題,導致對正確得字節(jié)碼得校驗和運行也可能出現(xiàn)問題。一個可能得原因是:在 ReDex 進行優(yōu)化時,會對一些方法體得指令順序進行重排,這種重排是不影響方法得邏輯得,但是可能會改變一部分指令,魔改后得 art 在校驗這樣得方法時可能會報 verify error,引起 crash。

    最終通過黑名單配置跳過了這些方法得優(yōu)化規(guī)避了問題,在后續(xù)得優(yōu)化過程中,沒有再遇到類似得問題。

    復雜場景優(yōu)化問題

    抖音業(yè)務復雜,代碼寫法多樣,給靜態(tài)分析和優(yōu)化增加了一些難度,也更容易遇到問題。下面是 2 個典型問題:

    1. 空方法優(yōu)化問題 代碼中可能存在一些空方法,排除掉反射和 natvie 調(diào)用等場景后,剩下得空方法應該是可以刪除得。但是在做優(yōu)化時,卻遇到了 crash,如以下代碼

    1 object XXXSDKHelper { 2 init { 3 initXXXSDK() 4 } 5 fun fakeInit() { 6 } 7 } 8 9 // 初始化任務10 public class XXInitTask implements Runnable {11 等Override12 public void run() {13 XXXSDKHelper.INSTANCE.fakeInit();14 }15 }

    在初始化代碼中調(diào)用fakeInit,它是一個空方法,調(diào)用它得目得是觸發(fā)XXSDKHelper類加載從而執(zhí)行init語句塊,如果刪除了這個空方法,就會導致初始化未執(zhí)行,在后續(xù)得流程中拋空指針。

    1. 復雜反射問題

    對于 Class.forname(...)等簡單得反射用法,靜態(tài)分析是可以分析出來得,但是對一些經(jīng)過字符串拼接或者嵌套之后得反射,靜態(tài)分析很難分析到。因此,對可能會被反射得代碼進行優(yōu)化需要非常小心,通常來說,匿名內(nèi)部類是不會通過反射調(diào)用得,基于此前提,我們進行了匿名內(nèi)部類得重命名優(yōu)化,但是在灰度后,發(fā)現(xiàn)某些第三方 SDK 會通過復雜得運行時邏輯對匿名內(nèi)部類進行了反射調(diào)用,最終導致了 ClassNotFoundError。

    復雜場景得優(yōu)化問題有些是業(yè)務代碼不規(guī)范造成得,但更多得是優(yōu)化前提(空方法可以刪除/匿名內(nèi)部類不會被反射)不成立所導致,所以在進行優(yōu)化時首先需要對假設(shè)進行謹慎得驗證。

    迭代流程

    為了減少穩(wěn)定性問題,我們總結(jié)了 ReDex Pass 得迭代流程。

    在對一項 Pass 有了初步構(gòu)思后,組內(nèi)會進行可行性討論,如果理論上可行就進入開發(fā)和驗證階段,之后同步進行至少 2 輪得獨立灰度驗證和業(yè)務方 Pass 評審,最后進行全量灰度驗證。其中任意一個環(huán)節(jié)發(fā)現(xiàn)問題,都會重新進行整個流程。

    通過這個流程,我們大大減少了穩(wěn)定性問題遺留到灰度階段得可能,在不斷完善迭代流程得同時我們也在探索通過加強單元測試、自動化測試等方式來提升質(zhì)量。

    后續(xù)規(guī)劃

    ReDex 仍然在持續(xù)迭代中,未來我們會在以下幾個方向繼續(xù)進行深入探索:

    1. 更多包體積優(yōu)化得探索和迭代,同時探索字節(jié)碼優(yōu)化在性能提升方面得可能性
    2. 提升字節(jié)碼質(zhì)量
  • 更加嚴格得合法性校驗;ReDex 之前已經(jīng)檢測出若干自定義插件和 proguard 得問題,將問題攔截在了編譯期,后續(xù)會繼續(xù)提升該能力
  • 建立更加完善得質(zhì)量驗證體系;ReDex 作為編譯期得全局字節(jié)碼優(yōu)化方案,如果保證優(yōu)化后得字節(jié)碼質(zhì)量一直是個痛點,我們會繼續(xù)在單元測試、自動化測試等方向探索質(zhì)量提升得手段
    1. 增加編譯期監(jiān)控,更加快速便捷得解決編譯期字節(jié)碼問題,提升接入體驗
    2. 其他應用方向探索;如方法插樁、某些條件下得死代碼掃描等。
    加入我們

    字節(jié)跳動終端技術(shù)團隊(Client Infrastructure) 是大前端基礎(chǔ)技術(shù)得全球化研發(fā)團隊(分別在北京、上海、杭州、深圳、廣州、新加坡和美國山景城設(shè)有研發(fā)團隊),負責整個字節(jié)跳動得大前端基礎(chǔ)設(shè)施建設(shè),提升公司全產(chǎn)品線得性能、穩(wěn)定性和工程效率;支持得產(chǎn)品包括但不限于抖音、本站、西瓜視頻、飛書、瓜瓜龍等,在移動端、Web、Desktop 等各終端都有深入研究。

    就是現(xiàn)在!客戶端/前端/服務端/端智能算法/測試開發(fā) 面向全球范圍招聘!一起來用技術(shù)改變世界,感興趣請聯(lián)系 fengrui.0等bytedance,主題 簡歷-姓名-求職意向-期望城市-電話。

    抖音 Android 基礎(chǔ)技術(shù)團隊是一個深度追求極致得團隊,我們專注于性能、架構(gòu)、包大小、穩(wěn)定性、基礎(chǔ)庫、編譯構(gòu)建等方向得深耕,保障超大規(guī)模團隊得研發(fā)效率和數(shù)億用戶得使用體驗。目前北京、上海、杭州、深圳都有大量人才需要,歡迎有志之士與我們共同建設(shè)億級用戶 APP!

    可以進入字節(jié)跳動招聘自己查詢「抖音基礎(chǔ)技術(shù) Android」相關(guān)職位,或者聯(lián)系:xiaolin.gan等bytedance ,直接發(fā)送簡歷內(nèi)推或者相關(guān)信息!

  •  
    (文/百里功華)
    免責聲明
    本文僅代表作發(fā)布者:百里功華個人觀點,本站未對其內(nèi)容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,需自行承擔相應責任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們刪除處理郵件:weilaitui@qq.com。
     

    Copyright ? 2016 - 2025 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號

    粵ICP備16078936號

    微信

    關(guān)注
    微信

    微信二維碼

    WAP二維碼

    客服

    聯(lián)系
    客服

    聯(lián)系客服:

    在線QQ: 303377504

    客服電話: 020-82301567

    E_mail郵箱: weilaitui@qq.com

    微信公眾號: weishitui

    客服001 客服002 客服003

    工作時間:

    周一至周五: 09:00 - 18:00

    反饋

    用戶
    反饋

    主站蜘蛛池模板: 温州精宇机械有限公司| 兰州 机械 有限公司| 温州威特机械有限公司| 高服筛分机械有限公司| 山西建龙钢铁有限公司| 荣精密机械有限公司| 温州博大机械有限公司| 上海荣沃机械有限公司| 邢工机械制造有限公司| 深圳市高士达精密机械有限公司| 无锡通用起重运输机械有限公司| 江苏鸿泰钢铁有限公司| 浙江塑料机械有限公司| 南通科邦机械有限公司| 济南食品机械有限公司| 浙江国机械有限公司| 鑫达机械制造有限公司| 上海德采包装机械有限公司| 旭能机械制造有限公司| 上海 坚机械有限公司| 营口金辰机械有限公司| 浙江高达机械有限公司| 浙江阜康机械有限公司| 建荣精密机械有限公司| 东营恒诚机械有限公司| 江苏同正机械制造有限公司| 江苏苏东机械有限公司| 江苏机械制造有限公司| 潍坊新成达机械有限公司| 徐州利国钢铁有限公司| 杭州萧山鼎立机械有限公司| 无锡市光彩机械制造有限公司| 东莞市鸿企机械有限公司| 俊杰机械深圳有限公司| 广州市金王机械设备有限公司| 山东威宝机械有限公司| 粤北联合钢铁有限公司| 威海汇鑫化工机械有限公司| 烟台瑞进精密机械有限公司 | 山东九环石油机械有限公司| 湖南威士重工机械有限公司| 宁波威恩精密机械有限公司| 遂宁华能机械有限公司| 佛山市科振机械设备有限公司 | 浙江胜祥机械有限公司| 上海科纳机械有限公司| 江苏凯凯机械有限公司| 宜兴富曦机械有限公司| 江苏国天锻压机械有限公司| 浙江名博机械有限公司| 合肥锦利丰机械有限公司| 旭英机械有限公司招聘| 温岭林大机械有限公司| 苏州立注机械有限公司| 淄博翔鹏机械有限公司| 上海福源机械有限公司| 长沙昊博机械设备有限公司 | 日照立盈机械有限公司| 沁阳宏达钢铁有限公司| 东莞麒麟机械有限公司| 苏州奥达机械部件有限公司| 上海胜松机械制造有限公司 | 江苏环海重工有限公司| 常州化工机械有限公司| 江阴长达钢铁有限公司| 焦作巨航粮油机械有限公司| 洛阳工程机械有限公司| 章丘大成机械有限公司| 三技精密机械有限公司| 无锡力马化工机械有限公司| 上海山美重型矿山机械有限公司 | 西安机械制造有限公司| 河北途盟机械制造有限公司| 青岛凯机械有限公司| 立信染整机械深圳有限公司| 天津市三鼎包装机械有限公司| 诸城盛新德机械有限公司| 江苏中科机械有限公司| 常州杭钢卓信机械装备有限公司 | 爱立许机械有限公司| 重庆文安机械有限公司| 江阴乐帕克智能机械有限公司| 山东山推机械有限公司| 汉威机械制造有限公司| 平湖市机械有限公司| 淄博晟峰机械有限公司| 福建敏捷机械有限公司| 新兴移山天津重工有限公司| 台州机械制造有限公司| 东芝机械上海有限公司| 常州市禾昌机械有限公司| 广州卓远机械有限公司| 杭州鸿机械有限公司| 苏州华尔普机械有限公司| 常州高凯精密机械有限公司| 新乡黄氏食品机械有限公司| 浙江嘉元机械制造有限公司| 唐山凯恒钢铁有限公司| 福建巨邦机械有限公司| 苏州勤美达精密机械有限公司| 上海枫信传动机械有限公司| 辽宁机械制造有限公司| 浙江全兴机械制造有限公司| 大连矢岛机械有限公司| 上海汉普机械有限公司| 浙江红旗机械有限公司| 机械有限公司 招聘| 佛山市海裕机械有限公司| 铁岭圣添机械有限公司| 如东宏信机械制造有限公司 | 江苏先电机械有限公司| 青岛义龙包装机械有限公司| 广西清隆机械制造有限公司| 富杰精密机械有限公司| 国浩机械制造有限公司| 中马园林机械有限公司| 衡水机械制造有限公司| 杭州容瑞机械技术有限公司| 大连铸鸿机械有限公司| 江苏天泽精工机械有限公司| 山东山工机械有限公司| 河北奥宇钢铁有限公司| 合肥金锡机械有限公司| 台州中茂机械有限公司| 东莞通盛机械有限公司| 佛山市包装机械有限公司| 泉州泉盛机械有限公司| 山东长城起重机械有限公司 | 德林机械制造有限公司| 鼎盛机械设备有限公司| 盐城机械设备有限公司| 山东明宇重工机械有限公司| 唐河大华机械有限公司| 浙江塑料机械有限公司| 四川诚德机械有限公司| 上海高德机械有限公司| 泉州得力农林机械有限公司| 东莞市精密机械制造有限公司| 农业机械制造有限公司| 四川机械制造有限公司| 冶金机械制造有限公司| 中山凌宇机械有限公司| 常州辉机械有限公司| 徐州天立机械有限公司| 徐州七星机械有限公司| 中车南口机械有限公司| 机械有限公司 衢州| 上海华威焊割机械有限公司| 济南金迈达机械有限公司| 广州市广花包装机械有限公司| 西安星火包装机械有限公司| 无锡胜喜路机械有限公司| 河北冀工机械制造有限公司| 江苏优轧机械有限公司| 安徽泰恒机械制造有限公司| 昆山台一精密机械有限公司| 陕西 机械设备有限公司| 东莞市巨冈机械工业有限公司 | 中山市信元铝门窗机械制造有限公司 | 徐州液压机械制造有限公司| 河南大方起重机有限公司| 常州动力机械有限公司| 延边金科食品机械有限公司| 南通中船机械制造有限公司| 郑州中意矿山机械有限公司| 杭州精工机械有限公司| 河南东盈机械设备有限公司| 戴氏印刷机械有限公司| 张家港市亿利机械有限公司| 德龙钢铁有限公司地址| 温州市兴业机械设备有限公司| 常州市昊博机械有限公司| 宁波翔博机械有限公司| 上海七洋液压机械有限公司| 格润德机械制造有限公司| 迪威玻璃机械有限公司| 徐工机械有限公司现状| 厦门众达钢铁有限公司| 上海台新食品机械有限公司| 深圳固尔琦包装机械有限公司 | 广州赛思达机械设备有限公司| 万杰食品机械有限公司| 广东南桂起重机械有限公司 | 广西机械制造有限公司| 优瑞纳斯液压机械有限公司| 宁波食品机械有限公司| 昆明 机械制造 有限公司| 东莞市台旺机械有限公司| 河南省起重机有限公司| 无锡华迪机械设备有限公司| 安徽宏远机械制造有限公司| 西安机械制造有限公司| 福州协展机械有限公司| 中山自动化机械有限公司| 江苏三麦食品机械有限公司 | 浙江天风塑料机械有限公司 | 小松山东工程机械有限公司| 济南机械 设备有限公司| 群韵饮料机械有限公司| 杭州丽伟电脑机械有限公司| 上海固好包装机械有限公司| 广州西力机械有限公司| 鸿达机械制造有限公司| 江苏大明重工有限公司| 重庆屯茂机械有限公司| 苏州明基自动化机械设备有限公司| 南京贝隆齐机械有限公司| 南方动力机械有限公司| 宁波正凯机械有限公司| 天赛塑胶机械有限公司| 珠海市广浩捷精密机械有限公司| 东远机械昆山有限公司| 安溪永兴机械有限公司| 三鑫重工机械有限公司| 云南科玛机械设备有限公司| 杭州同创顶立机械有限公司| 徐州东南钢铁工业有限公司| 船舶机械制造有限公司| 上海塑胶机械有限公司| 河北德欧机械有限公司| 新疆丰泰钢铁有限公司| 苏州乐嘉机械有限公司| 合肥市春晖机械制造有限公司| 苏州恒威海绵机械有限公司| 机电设备有限公司起名| 固安嘉峰机械有限公司| 艺达精密机械有限公司| 平湖成功机械有限公司| 博阳机械制造有限公司| 台州市路桥奇勇农业机械有限公司| 唐山凯恒钢铁有限公司| 东莞市柯达机械有限公司| 郑州年旭机械有限公司| 新乡市矿山重型起重机有限公司 | 江苏沃元精密机械有限公司| 浙江昌亨机械有限公司| 舟山荣德机械有限公司| 安徽远鸿机械自动化有限公司| 济宁市兴旺机械制造有限公司| 山东业机械有限公司| 天津天丰钢铁有限公司| 山东和晟机械设备有限公司 | 河北常富机械有限公司| 杭州三共机械有限公司| 石油机械设备有限公司| 曲阜圣达机械有限公司| 郑州长城机械有限公司| 江苏祥达机械制造有限公司| 河南旭矿机械有限公司| 上海利昆机械有限公司| 江苏大圣机械制造有限公司| 武汉餐至饮机械设备有限公司| 华夏机械设备有限公司| 无锡通用机械有限公司| 洛阳钢峰机械有限公司| 杭州德工机械有限公司| 江苏电能机械有限公司| 高密永和精密机械有限公司招聘网 | 扬州涂装机械有限公司| 江苏甲钢钢铁有限公司| 玉环锐利机械有限公司| 台林机械有限公司 -| 江淮重工机械有限公司| 温州印刷机械有限公司| 上海岭申机械有限公司| 西安北村精密机械有限公司| 扬州海沃机械有限公司| 首都航天机械有限公司| 河南飞龙工程机械制造有限公司| 温州威特机械有限公司| 天津大强钢铁有限公司| 东风悦达起亚有限公司| 江阴市机械制造有限公司| 曼透平机械有限公司| 汉虹精密机械有限公司| 温州杰福机械设备有限公司| 长沙精密机械有限公司| 张家港市饮料机械有限公司| 东莞自动化机械有限公司| 威海华东重工有限公司| 安阳锻压机械有限公司| 嘉兴 精密机械有限公司| 上海科斯包装机械有限公司 | 深圳市鑫宏伟机械设备有限公司| 南京润森工程机械有限公司| 唐山国义特种钢铁有限公司 | 新麦机械有限公司官网| 世翔精密机械制造有限公司| 工程机械设备有限公司| 浙江荣德机械有限公司| 浙江恒齿传动机械有限公司| 无锡 液压机械有限公司| 成都艾威机械有限公司| 麻阳金湘钢铁有限公司| 广州赛思达机械设备有限公司| 南通安港机械有限公司| 上海捷赛机械有限公司| 上海板换机械设备有限公司| 东莞鸿昌机械有限公司| 液压机械制造有限公司| 河南发达起重机有限公司| 新乡市豫成振动机械有限公司| 广州市包装机械有限公司| 建筑装饰有限公司起名| 东莞%机械%有限公司| 牡丹江机械有限公司| 青岛莱恩机械有限公司| 鞍山矿山机械有限公司| 福建申达钢铁有限公司| 苏州英维特精密机械有限公司| 常州艾隆精密机械有限公司| 天津市仁翼钢铁有限公司| 江阴市药化机械有限公司| 震德塑料机械有限公司| 中山伙伴自动化机械有限公司| 上海沁艾机械设备有限公司| 浙江纺织机械有限公司| 众旭食品机械有限公司| 广州九盈机械有限公司| 武汉东泰盛机械有限公司| 北京 机械有限公司| 浙江亿森机械有限公司| 上海曼中机械有限公司| 盐城市联鑫钢铁有限公司| 成都杰瑞达工程机械有限公司| 沈阳冶金机械有限公司| 杭州迪迪机械有限公司| 山西重工机械有限公司| 广州机械自动化有限公司| 柳州工程机械有限公司| 宝鸡南车时代工程机械有限公司| 四川兴明泰机械有限公司| 烟台精越达机械设备有限公司 | 甘肃机械化建设工程有限公司| 上海江南制药机械有限公司| 宁江精密机械有限公司| 浙江环兴机械有限公司| 诸城市盛和机械有限公司| 南京高立工程机械有限公司| 济南章力机械有限公司| 河南铁山起重设备有限公司| 苏州腾龙机械有限公司| 苏州恒升机械有限公司| 江阴锦澄钢铁有限公司| 新乡天丰机械有限公司| 浙江海重重工有限公司| 广州九盈机械有限公司| 黎城太行钢铁有限公司| 奉化南方机械有限公司| 泉州恒泉机械有限公司| 东方机械制造有限公司| 沁阳宏达钢铁有限公司| 沧州重诺机械制造有限公司| 东莞市森佳机械有限公司| 深圳市高郭氏精密机械有限公司| 上海建冶重工机械有限公司| 诸城市华钢机械有限公司| 河北龙汐机械制造有限公司| 江苏民生重工有限公司| 工程的机械设备有限公司 | 远东机械设备有限公司| 北京液压机械有限公司| 华泰机械制造有限公司| 苏州 机械 有限公司| 东莞市浈颖机械设备有限公司| 江阴市华科机械设备有限公司| 常州市日中精密机械有限公司| 青岛给力机械有限公司| 浙江安奇迪动力机械有限公司| 佛山市晶菱玻璃机械有限公司| 印刷包装机械有限公司| 重庆龙文机械设备有限公司| 机械装备制造有限公司| 石油化工机械有限公司| 济南机械制造有限公司| 机械设备租赁有限公司| 天津市液压机械有限公司| 广东森人机械有限公司| 天津敏信机械有限公司| 天津聚鑫贵泽钢铁贸易有限公司 | 青岛国森机械有限公司| 广州起重机械有限公司| 南京润森工程机械有限公司| 宁波友杰机械有限公司| 江苏联顺机械有限公司| 永盛机械设备有限公司| 资阳 机械有限公司| 无锡化工机械有限公司| 珠海飞马传动机械有限公司| 佛山突破机械制造有限公司| 山西 机械设备有限公司| 青州泰达机械有限公司| 上海贯博起重设备有限公司| 浙江万龙机械有限公司| 南通丰威机械有限公司| 山西机械设备有限公司| 深圳市包装机械有限公司| 广州嘉银机械有限公司| 济南钢铁贸易有限公司| 浙江九隆机械有限公司| 科达机械制造有限公司| 山东亚泰机械有限公司| 浙江安奇迪动力机械有限公司| 武汉市快诚机械有限公司 | 合肥起重机械有限公司| 巩义市人和机械有限公司| 山东碧海机械有限公司| 鹰起重机械有限公司| 标准缝纫机菀坪机械有限公司| 山东英胜机械有限公司| 福建起然燃气设备有限公司| 苏州安特精密机械有限公司| 宁波科鼎钢铁有限公司| 上海众星洗涤机械制造有限公司 | 安徽金锡机械有限公司| 山东天瑞重工有限公司| 山鑫矿山机械有限公司| 杭州春江制药机械有限公司 | 淄博中升机械有限公司| 山东山推机械有限公司| 三一汽车起重机械有限公司| 上海机械进出口有限公司| 威海 机械有限公司| 合肥大洋机械制造有限公司| 太仓健柏机械有限公司| 新疆起亚铝业有限公司招聘| 浙江创伟机械有限公司| 徐州液压机械有限公司| 常州 机械有限公司| 佛山突破机械有限公司| 南宁敏创机械有限公司| 泸州发展机械有限公司| 杭州建明机械有限公司| 天阳机械制造有限公司| 江苏仁达机械有限公司怎么样| 友佳精密机械有限公司| 常州远见机械有限公司| 瑞德森机械有限公司| 东阳市佳先机械制造有限公司| 福州机械制造有限公司| 抚顺中兴重工有限公司| 金属制品有限公司起名| 联德精密机械有限公司| 机械设备工程有限公司| 上海凌鹰机械有限公司| 东莞共荣精密机械有限公司| 天津市仁翼钢铁有限公司| 新乡市金原起重机械有限公司| 桂林橡胶机械有限公司| 台州启运机械有限公司| 杭州驰丰机械有限公司| 玛顿重工太仓有限公司| 宝钢盐城钢铁有限公司| 石家庄 机械有限公司| 山东和晟机械设备有限公司| 东莞市业佳精密机械有限公司| 上海 坚机械有限公司| 聚力特机械有限公司| 机械设备有限公司招聘| 郑州三和水工机械有限公司| 兴业机械设备有限公司| 中山市信元铝门窗机械制造有限公司| 滨州 机械 有限公司| 浙江大宇轻工机械有限公司| 长江液压机械有限公司| 宁波市鸿博机械制造有限公司 | 兰州华诚石化机械制造有限公司| 连云港亚新钢铁有限公司| 咸阳机械制造有限公司| 河北工程机械有限公司| 大连工进机械制造有限公司| 鞍山源鑫钢铁有限公司| 上海金恒机械制造有限公司| 西安冠杰机械设备有限公司 | 昆山裕邦机械有限公司| 日照市机械有限公司| 瑞达机械制造有限公司| 上海楷钛机械制造有限公司| 无锡万华机械有限公司| 起步有限公司上市排名| 食品机械制造有限公司| 东莞自动化机械有限公司| 常州制药机械有限公司| 中实洛阳重型机械有限公司 | 北京机械制造有限公司| 重庆彪汉机械有限公司| 江苏韩通船舶重工有限公司| 广州工程机械有限公司| 诚辉机械制造有限公司| 上海天勇机械设备有限公司| 南通力威机械有限公司| 福州 机械 有限公司| 首唐宝生钢铁有限公司| 上海鑫斌机械有限公司| 南通路捷机械有限公司| 德国机械制造有限公司| 洛阳瑞德机械有限公司| 金达机械制造有限公司| 上海瀚艺冷冻机械有限公司| 重庆舰帏机械有限公司| 如皋市通达机械制造有限公司| 东莞市华森重工有限公司| 沈阳冶金机械有限公司| 上海德仁橡塑机械有限公司| 苏州苏鹰机械制造有限公司| 河北圣和农业机械有限公司| 上海满鑫机械有限公司| 东莞市铖铭机械有限公司| 三川德青工程机械有限公司| 江苏苏盐阀门机械有限公司| 无锡双益精密机械有限公司| 广东鸿业机械有限公司| 邯郸纺织机械有限公司| 青州东威机械有限公司| 山东锐驰机械有限公司| 昆山 机械有限公司| 河南省邦恩机械制造有限公司| 保定向阳航空精密机械有限公司| 成都兴业邦达重工机械有限公司 | 强大印刷机械有限公司| 无锡诺德传动机械有限公司| 上海宏铭纺织机械有限公司| 信易电热机械有限公司| 湖北江华机械有限公司| 江苏巨威机械有限公司| 首钢东华机械有限公司| 速技能机械有限公司| 青岛鲁奥机械有限公司| 济南 机械设备有限公司| 鑫锐机械设备有限公司| 衡阳纺织机械有限公司| 上海紫永机械有限公司| 武汉机械制造有限公司| 上海电工机械有限公司| 山东祥远机械有限公司| 江苏银河机械有限公司| 江西欧克机械有限公司| 大丰联鑫钢铁有限公司| 郑州机械设备有限公司| 北京 机械 有限公司| 邹平 机械有限公司| 宁波食品机械有限公司| 宏信机械设备有限公司| 上海科纳机械有限公司| 江阴市药化机械有限公司| 浙江汉克机械有限公司| 嘉兴格鲁博机械有限公司| 上海北阅机械设备有限公司 | 河南新起点印务有限公司| 上海楚尚机械有限公司| 中船华南船舶机械有限公司 | 连云港机械制造有限公司| 苏州一工机械有限公司| 大连液力机械有限公司| 霸州新利钢铁有限公司| 东莞仕能机械设备有限公司| 成都艾威机械有限公司| 常州国丰机械有限公司| 上海德仁橡塑机械有限公司| 沂南县宏发机械有限公司| 河南重机械有限公司| 深圳市包装机械有限公司| 扬州鼎隆机械有限公司| 建华机械制造有限公司| 湖北仙粮机械有限公司| 合肥旭龙机械有限公司| 江阴市江顺机械有限公司| 贵州红林机械有限公司| 安阳锻压机械工业有限公司| 深圳市环球同创机械有限公司| 东莞港重机械有限公司| 唐山松汀钢铁有限公司| 中意机械苏州有限公司| 矿山起重机有限公司| 新乡正兴机械有限公司| 河源德润钢铁有限公司| 台州亚格机械有限公司| 四川望锦机械有限公司| 石家庄米兹机械设备有限公司 | 东莞市通盛机械有限公司| 山西天巨重工机械有限公司| 郑州世纪精信机械制造有限公司| 邹平宏鑫机械有限公司| 浙江晨雕机械有限公司| 无锡兆立精密机械有限公司| 山西中德科工机械制造有限公司| 泉州市劲力工程机械有限公司 | 昆山 机械设备有限公司| 厦门大禾众邦机械有限公司| 无锡伊诺特石化机械设备有限公司| 阳春市新钢铁有限公司| 佛山市机械设备有限公司| 明天机械有限公司待遇| 大连鸿升机械有限公司| 杭州长虹机械有限公司| 无锡市川中五金机械有限公司 | 中海福陆重工有限公司招聘| 上海中机械有限公司| 成都中挖机械有限公司| 山东威力重工机床有限公司| 重庆智茂机械制造有限公司| 上海博强机械有限公司| 浙江汉达机械有限公司| 工程的机械设备有限公司| 宁波美宁机械有限公司| 苏州市江南石化机械有限公司| 济南市恒宇机械有限公司| 洛阳卓格哈斯机械有限公司| 武汉臻尚机械设备有限公司| 湖北银轮机械有限公司| 青岛岛宇机械有限公司| 浙江新罗兰机械有限公司| 江西龙工机械有限公司| 河南矿山起重有限公司| 湖南机械设备有限公司| 粮油机械设备有限公司| 江阴市江南轻工机械有限公司| 杭州通绿机械有限公司| 天宇机械制造有限公司| 常州机械制造有限公司| 东莞市力华机械设备有限公司 | 巩义市人和机械有限公司| 上海集嘉机械有限公司| 金韦尔机械有限公司| 龙口泰进机械有限公司| 常州昊博机械有限公司| 九江益鑫机械有限公司| 佛山定中机械有限公司| 合肥华运机械制造有限公司| 芜湖科翔动力机械有限公司| 福建新源重工有限公司| 东莞达成机械设备制造有限公司| 鹤壁市豫星机械制造有限公司 | 招商局重工深圳有限公司| 科华机械制造有限公司| 宁波科鼎钢铁有限公司| 曲阜兴运输送机械设备有限公司| 江苏联鑫钢铁有限公司| 江阴市科盛机械有限公司| 洛阳福格森机械装备有限公司| 上海申克机械有限公司| 新乡 筛分机械有限公司| 佛山市钲昌机械设备有限公司| 星 精密机械有限公司| 河南信联重工机械有限公司| 台一精工机械有限公司| 齐鲁石化机械制造有限公司招聘| 深圳市德润机械有限公司| 斯特机械制造有限公司| 南通惠生重工有限公司| 意达纺织机械有限公司| 鲁山万通通机械制造有限公司 | 无锡六叶机械有限公司| 太仓越华精密机械配件有限公司| 中航国际钢铁贸易有限公司| 南方路面机械有限公司| 文水海威钢铁有限公司| 常州达德机械有限公司| 广东先达数控机械有限公司| 邹平 机械有限公司| 大连铸鸿机械有限公司| 安阳锻压机械有限公司| 如皋市通达机械制造有限公司| 上海纺织机械有限公司| 爱可机械深圳有限公司| 斗山工程机械苏州有限公司| 丹阳龙江钢铁有限公司| 佛山市 重工有限公司| 杭州 机械设备有限公司| 济南帕特机械有限公司| 唐山龙泉机械有限公司| 杭州双龙机械有限公司| 东莞市亚龙玻璃机械有限公司| 丰机械有限公司怎么样| 无锡布勒机械制造有限公司招聘| 北京晨光兴业机械有限公司| 湖州天和机械有限公司| 徐州随车起重机有限公司 | 厦门 机械设备有限公司| 浙江金驰机械有限公司| 青岛昌源隆纺织机械有限公司| 新乡市矿山起重机械有限公司| 深圳创能机械有限公司| 浙江迅定钢铁有限公司| 济南恒迪机械有限公司| 青州市国发包装机械有限公司 | 上海液压机械有限公司| 贝斯特机械有限公司| 上海霏润机械设备有限公司| 山东云光钢铁有限公司| 江门广力机械有限公司| 上海凡贝机械有限公司| 大连橡胶塑料机械有限公司 | 洛阳震动机械有限公司| 贝斯特机械有限公司| 浙江全兴机械制造有限公司| 江苏方邦机械有限公司| 宁波兴波机械有限公司| 江阴市华夏包装机械有限公司 | 温州光明印刷机械有限公司| 恒麦食品机械有限公司| 常熟神马机械有限公司| 万则盛机械有限公司| 如皋市通达机械制造有限公司| 穗华机械设备有限公司| 江阴 起重机械有限公司| 山东福临机械制造有限公司| 郑州世纪精信机械制造有限公司| 苏州施米特机械有限公司| 郑州市联华机械制造有限公司| 辽宁亿丰钢铁有限公司| 重庆金丰机械有限公司| 佛山市陶瓷机械有限公司| 宁波钢铁有限公司工作| 东莞机械设备制造有限公司| 北京北宇机械设备有限公司| 南京机械电子有限公司| 南京包装机械有限公司| 明毅电子机械有限公司| 青岛辉腾机械有限公司| 南通中远重工有限公司| 洛阳奥图机械设备有限公司| 山东泰山机械有限公司| 昆山弘迪精密机械有限公司| 安徽华邦机械有限公司| 天津泰威机械有限公司| 山东重型机械有限公司| 湖北江华机械有限公司| 河北犀牛民用机械有限公司| 迪威玻璃机械有限公司| 山东龙辉起重机械有限公司| 安庆佳乐机械有限公司| 徐州迈特机械有限公司| 浙江上石化机械有限公司| 杭州一鼎传动机械有限公司| 济南 升降机械有限公司| 中实洛阳重型机械有限公司| 淮安机械制造有限公司| 吉林吉钢铁有限公司| 山东永弘机械有限公司| 无锡真木机械有限公司| 大连正丰机械有限公司| 河南豫工机械有限公司| 南京机械设备有限公司| 江苏佳粮机械有限公司| 济南沃德机械制造有限公司| 泰安华伟重工有限公司| 四川机械制造有限公司| 厦门厦工机械有限公司| 昌乐 机械 有限公司| 杭州机械设备有限公司| 山东金成机械有限公司| 群韵饮料机械有限公司| 潍坊元鸣机械有限公司| 唐山凯恒钢铁有限公司| 湖南湘船重工有限公司| 哈尔滨机械制造有限公司| 上海宝丰机械制造有限公司| 昆明机械制造有限公司| 中热机械设备有限公司| 旭能机械制造有限公司| 郑州富民机械有限公司| 河南隧通机械有限公司| 比富机械(东莞)有限公司| 中船重工重庆液压机电有限公司| 东莞市包装机械有限公司| 山东威力重工机床有限公司| 广西金达机械有限公司| 山东荣利中石油机械有限公司| 广州汉达机械有限公司| 长沙凯瑞重工机械有限公司| 无锡双麦机械有限公司| 宁波双马机械工业有限公司| 大连船舶重工有限公司| 河南省矿山起重有限公司| 河北普阳钢铁有限公司| 新乡市法斯特机械有限公司| 上海鹏则机械有限公司| 张家港市通惠化工机械有限公司| 上海信进精密机械有限公司| 常熟市机械有限公司| 沈阳凯力拓机械设备有限公司| 昆山日晟机械有限公司| 恒兴兴业机械有限公司| 安徽工程机械有限公司| 利星行机械昆山有限公司| 南通力福通起重机械有限公司| 上海善能机械有限公司| 中山中炬精工机械有限公司| 潍坊市贝特工程机械有限公司| 宁波敏达机械有限公司| 高明鸿溢机械有限公司| 济南金迈达机械有限公司| 上海雄风起重设备厂有限公司 | 广州乾能机械制造有限公司| 广东金凯锐机械技术有限公司| 上海毅锴机械有限公司| 河南重型机械有限公司| 合肥盛安机械有限公司| 绍兴 机械 有限公司| 江苏久盛机械设备有限公司| 杭州 机械 有限公司| 徐州中嘉工程机械有限公司| 溧阳市机械有限公司| 国机重工洛阳有限公司| 上海乾承机械设备有限公司| 青岛 塑料机械有限公司| 安阳斯普机械有限公司| 宁波力源机械有限公司| 重庆爱扬机械有限公司| 锦机械设备有限公司| 成都金瑞建工机械有限公司| 丝网机械设备有限公司| 郑州同鼎机械设备有限公司| 南京恩梯恩精密机械有限公司| 南京机械设备有限公司| 山东瑞浩重型机械有限公司| 苏州雁达机械有限公司| 上海春明机械制造有限公司| 马鞍山机械有限公司| 玉溪新兴钢铁有限公司| 盐城机械设备有限公司| 浙江赛峰机械有限公司| 柳州欧维姆机械有限公司| 江阴钢铁贸易有限公司| 广州机械配件有限公司| 新乡市欧霖佳机械有限公司| 青岛橡塑机械有限公司| 德州佳永机械制造有限公司| 徐州丰展机械有限公司| 济宁机械设备有限公司| 佛山市创利宝包装机械有限公司 | 武汉日晗精密机械有限公司| 人和弹簧机械有限公司| 潍坊天洁机械有限公司| 大连滨海起重机吊具有限公司 | 铁岭圣添机械有限公司| 浙江富昌机械有限公司| 上海烨昌食品机械有限公司| 天津艾尔特精密机械有限公司| 慈溪市机械有限公司| 辽宁中原机械有限公司| 安钢闽源钢铁有限公司| 湖南汇杰机械设备有限公司| 东莞市智科精密机械有限公司| 江苏江河机械制造有限公司| 洛阳友建工程机械有限公司| 纸箱机械制造有限公司| 宜兴富曦机械有限公司| 东莞市日东超声波机械有限公司 | 杭州山虎机械有限公司| 烟台金土源机械化工程有限公司| 上海新沪机械有限公司| 东莞市途锐机械有限公司 | 顺兴机械制造有限公司| 北京市机械施工有限公司| 唐山市机械有限公司| 山东建昌机械有限公司| 河北卓昊机械制造有限公司| 浙江天联机械有限公司| 宁波恒阳机械有限公司| 农业机械设备有限公司| 张家港市亿利机械有限公司| 无锡双益精密机械有限公司| 济南 重工有限公司| 河南德润钢铁有限公司| 广东正力精密机械有限公司| 河南天力起重机械有限公司| 苏州全彩机械设备有限公司| 齐鲁石化机械制造有限公司招聘| 鞍山矿山机械有限公司| 泰上机械设备有限公司| 常州包装机械有限公司| 杭州驰丰机械有限公司| 英侨机械制造有限公司| 苏州鹏丰机械元件有限公司| 东营恒诚机械有限公司| 立信染整机械有限公司| 潍坊凯德塑料机械有限公司| 北仑旭升机械有限公司| 江苏合丰机械制造有限公司| 唐山凯恒钢铁有限公司| 东营海河机械有限公司| 唐山龙泉机械有限公司| 上海福源机械有限公司| 建设工程有限公司起名| 上海众星洗涤机械制造有限公司| 江苏福克斯机械有限公司| 山东建凌机械有限公司| 建筑机械设备有限公司| 广州市台展机械有限公司| 新乡市豫成振动机械有限公司 | 河南万合机械有限公司| 杭州海特机械有限公司| 佛山丰堡精密机械有限公司| 松川机械设备有限公司| 鼎工机械制造有限公司| 浙江迅定钢铁有限公司| 玛顿重工太仓有限公司| 北京恒博立华机械设备有限公司| 浙江兴发机械有限公司| 昆山优能机械有限公司| 浙江双子机械制造有限公司| 湛江恒润机械有限公司| 浙江瑞大机械有限公司| 常州精密机械有限公司| 山东省机械有限公司| 华丽木工机械有限公司| 东平开元机械有限公司| 山东顺达机械有限公司| 志成机械制造有限公司| 江阴江达机械装备有限公司| 济南梓鑫机械有限公司| 玉环中本机械有限公司| 聊城机械设备有限公司| 上海树新机械有限公司| 启瑞机械广州有限公司| 河北冀工机械制造有限公司 | 合肥亿恒机械有限公司| 郑州宇通重工有限公司| 雷州雷宝机械有限公司| 小森机械南通有限公司| 重庆机械设备有限公司| 南阳鼎鑫钢铁有限公司| 湖南星邦重工有限公司| 山东通用机械有限公司| 济南冠越机械设备有限公司| 江苏祥达机械制造有限公司| 吉林鑫达钢铁有限公司| 山东金亿机械制造有限公司| 佛山机械设备有限公司| 长沙机械制造有限公司| 辽宁营口钢铁有限公司| 登福机械上海有限公司| 宝鸡中车时代工程机械有限公司 | 河北 机械 有限公司| 南京高立工程机械有限公司| 广州市善友机械设备有限公司 | 天津市三鼎包装机械有限公司| 兴龙机械模具有限公司| 上海汉虹精密机械有限公司| 许昌市机械有限公司| 苏州全彩机械设备有限公司| 上海中远海运重工有限公司 | 青岛精锐机械制造有限公司| 中航起落架有限公司| 北京 机械工程有限公司| 洛阳鹏起实业有限公司怎么样| 圣博液压机械有限公司| 安庆恒昌机械有限公司| 如皋市联创捏合机械有限公司 | 山东恒旺机械有限公司| 约翰迪尔佳木斯农业机械有限公司| 江门市科杰机械自动化有限公司 | 湖州汇大机械有限公司| 温州镇田机械有限公司| 上海剑豪传动机械有限公司| 上海嘉倍德塑胶机械有限公司 | 四川欧曼机械有限公司| 常林道依茨法尔机械有限公司| 东阳市佳先机械制造有限公司| 武汉千里马工程机械有限公司| 佛山市优霸机械设备有限公司| 食品机械设备有限公司| 石家庄机械制造有限公司| 杭州精密机械有限公司| 江西 机械有限公司| 芜湖 机械有限公司| 山东山推机械有限公司| 莱州市鲁樽机械有限公司| 常州科尧机械有限公司| 东莞市金拓机械有限公司| 保定锐腾机械制造有限公司| 临沂金盛机械配套有限公司| 湖北 机械制造有限公司| 江苏苏盐阀门机械有限公司| 武义海拓机械有限公司| 翰林机械制造有限公司| 石家庄机械有限公司| 河北小松工程机械贸易有限公司 | 台州华达机械有限公司| 长江液压机械有限公司| 沈阳 机械 有限公司| 广东重工建设监理有限公司怎么样| 上海昱庄机械有限公司| 东莞市乔锋机械有限公司| 广州恒联食品机械有限公司 | 德州仁信印染机械有限公司| 浙江安驰机械有限公司| 山东同力达智能机械有限公司| 首钢伊犁钢铁有限公司| 昆山协扬机械有限公司| 山东国新起重机械有限公司| 东莞液压机械有限公司| 山东白龙机械有限公司| 山东九环石油机械有限公司| 山东白龙机械有限公司| 山东骏腾起重设备有限公司 | 广西柳工机械有限公司|