ពេលខ្លះអ្នកចង់ឃើញនិងប្រភេទនៃការបំពេញនៅក្នុងកម្មវិធីជាក់លាក់អ្វី? បន្ទាប់មកគាត់មានដើម្បីប្រើវិស្វកម្មបញ្ច្រាស។ តើវាជាអ្វី? តើវាដំណើរការយ៉ាងដូចម្តេច? តើធ្វើដូចម្តេចដំណើរការនេះគឺជា? ទាំងអស់នេះអ្នកនឹងរៀនពីអត្ថបទនេះ។
កម្មវិធីវិស្វកម្មបញ្ច្រាសគឺជាអ្វី?
ដូច្នេះគេហៅថាការវិភាគកម្មវិធីដំណើរការក្នុងគោលបំណងដើម្បីឱ្យយល់ពីរបៀបដែលវាធ្វើការ, ដូច្នេះថានៅក្នុងពេលអនាគតដើម្បីបង្កើតដំណើរការនេះដោយធ្វើឱ្យការផ្លាស់ប្តូរចាំបាច់។ ជាធម្មតាត្រូវបានប្រើសម្រាប់គោលបំណងនេះនិងដំឡើងកម្មវិធីបំបាត់កំហុស។ ដោយអាស្រ័យលើគុណភាពនៃកម្មវិធីដែលបានប្រើនឹងមានភាពខុសគ្នាហើយលទ្ធផលគឺជាចំនួនទឹកប្រាក់នៃការពេលវេលាដែលគួរតែត្រូវបានចំណាយលើវាដើម្បីនាំយកនៅក្នុងសំណុំបែបបទធម្មតា។ ពន្យល់ពីវិស្វកម្មបញ្ច្រាសសម្រាប់ការចាប់ផ្តើមជាគំរូល្អបំផុត។ ក្នុងនាមជាអ្នកសម្តែងកម្មវិធីដែលបានសរសេរនោះសម្រាប់ប្រព័ន្ធប្រតិបត្តិការ Android មួយ។ ឥឡូវនេះសូមយល់ឱ្យបានដើម្បីរកឱ្យឃើញនូវអ្វីដែលនិងរបៀប។
ធ្វើការជាមួយប្រព័ន្ធប្រតិបត្តិការ Android កម្មវិធី-
ជាដំបូងយើងត្រូវការដើម្បីបញ្ជាក់ពីចំណុចមួយចំនួន។ កម្មវិធីប្រើ Bytecode និង LogCat ។ កាលពីមុននេះសមភាគីក្នុងតំបន់និងដំឡើងដូចដែលបានបង្ហាញកម្មវិធីបំបាត់កំហុស។ វាគឺជាការចាំបាច់ផងដែរដើម្បីយល់ពីរចនាសម្ព័ន្ធនៃកម្មវិធីនេះដោយខ្លួនឯងបាន។ ដូច្នេះកម្មវិធីគ្នាគឺឯកសារជាមួយផ្នែកបន្ថែមមួយ apk ។ លោកបាន zip'om ។ យើងមានការចាប់អារម្មណ៍នៅក្នុងមាតិការបស់វា - ធនធានកម្មវិធី classes.dex និង AndroidManifest.xml ។ ប្រសិនបើអ្នកធ្វើការសរសេរកម្មវិធីលើប្រព័ន្ធប្រតិបត្តិការ Android, បញ្ហាជាមួយអតីតនិងក្រោយមកទៀតមិនគួរមាន។ ប៉ុន្តែ classes.dex - នេះជាកម្មវិធីមួយដែលកូដបៃបានចងក្រងជាពិសេសសម្រាប់ម៉ាស៊ីននិម្មិត។ ស្រង់ចេញពីប្រភពកូដ Java របស់គាត់មាននៅលើអ៊ីនធឺណិតមិនទទួលបានមូលនិធិ។ ប៉ុន្តែវាគឺជាការដែលអាចធ្វើបានដើម្បីទទួលបាន opcode dalvik - សំណុំពិសេសមួយរបស់ពាក្យបញ្ជាដែលត្រូវបានប្រើសម្រាប់ម៉ាស៊ីននិម្មិត។ ចំពោះស្រដៀងគ្នាមួយដែលយើងអាចនិយាយបានថាការជួបប្រជុំគ្នានៃទឹកជំនន់ក្នុងតំបន់នេះ។ Classes.dex អាចត្រូវបានបម្លែងទៅជាឯកសារដែលមានពាងនេះ។ សូម្បីតែនៅក្នុងករណីមួយ, អ្នកអាចទទួលបានលេខកូដបន្ទាប់ពី Java-ចងក្រង, ដែលនឹងក្លាយជាតិចឬច្រើនដែលអាចអានបាន។ នោះគឺជាផ្លូវដែលយើងទៅ។
ការចងក្រង
ដំណើរការនេះនឹងត្រូវបានអនុវត្តដោយប្រើកម្មវិធី Apk នាយកចាត់ការ។ មុនពេលអ្នកចាប់ផ្តើម, ធ្វើឱ្យប្រាកដថាមានកម្មវិធីបញ្ជាត្រឹមត្រូវសម្រាប់ devaysa ហើយដំណើរការជារបៀបរបស់ USB-បំបាត់កំហុស។ ដំបូងយើងនឹងត្រូវបានផ្លាស់ទីឯកសារដែលនឹងត្រូវបានញែកចូលទៅក្នុង apk_manager បទបញ្ជាមួយ \ កន្លែង apk នៅទីនេះសម្រាប់ modding នេះ។ បន្ទាប់ពីនោះអ្នកគួរតែរត់ Script.bat ។ ប្រសិនបើមានបញ្ហាទេបន្ទាប់មកចាប់ផ្ដើមកុងសូលដែលនឹងអក្សរបៃតង។ ជ្រើសចំណុចចំនួនប្រាំបួន - "ការចងក្រង" ។ ពេលដែលដំណើរការនេះត្រូវបានចាប់ផ្តើម, វាគឺជាការចាំបាច់មិនមែនដើម្បីបិទកុងសូល។ បន្ទាប់មក, ការបើកចំហការប្រាក់ apk ឯកសារដោយប្រើប័ណ្ណសារនិងការដកស្រង់ពីវា classes.dex, ត្រូវបានដំណើរការ dex2jar កម្មវិធី។ សម្រាប់យើងលទ្ធផលដែលបានទាមទារវាគឺជាការចាំបាច់ដើម្បីផ្លាស់ទីវត្ថុមួយដោយមាន .bat ផ្នែកបន្ថែម។ អ្នកនឹងឃើញឯកសារដែលនឹងបញ្ចប់នៅក្នុង .jar ។ រហូតមកដល់ពេលបង្អួចមិនបានបិទ។
យើងបានវិភាគទិន្នន័យ
ដើម្បីទទួលបានពអំពីកម្មវិធីនេះ, អ្នកត្រូវតែបើកវាសម្ដែងឱ្យឃើញ។ នេះបើយោងតាមវាយើងកំណត់ដែលដើរតួនាទីជាសកម្មភាពចម្បង។ វាត្រូវបាននាងដែលឥឡូវនេះបានបង្ហាញនូវសារៈសំខាន់ដែលអស្ចារ្យបំផុតដល់យើង។ វាគឺជាការចង់បានផងដែរដើម្បីទៅរកមើលនៅផ្នែកខាងក្រោមនៃកម្មវិធីនេះ។ ប្រសិនបើមានខាងក្រោមនេះគឺជាអ្នកគ្រប់គ្រងអាជ្ញាប័ណ្ណអំពីនេះវាជាការលំបាកយ៉ាងខ្លាំងក្នុងការអនុវត្តវិស្វកម្មបញ្ច្រាស។ ប្រសិនបើអ្នកបានប្ដូរទៅ JD-gui និងពង្រីកដើមឈើនេះយើងអាចមើលឃើញចន្លោះឈ្មោះជាច្រើន។ សន្មត់ថាបីរបស់ពួកគេ។ ក្នុងការលើកដំបូងគឺជាឯកសារដែលបានភ្ជាប់ជាមួយនឹងការផ្សាយពាណិជ្ជកម្ម។ លើកទីពីរនេះនឹងក្លាយជាអ្នកចាត់ការទូទៅអាជ្ញាប័ណ្ណថ្នាក់។ នៅក្នុងទីបីយើងមានទិន្នន័យដែលចាំបាច់។ វាជាពេលដែលយើងទៅ។ មាននឹងត្រូវបានរកឃើញនិងយកគន្លឹះ, ហើយបន្ទាប់មកនៅសល់នៃបន្ទាត់ដែលពិនិត្យមើលថាតើកំណែដែលបានធ្វើការទទួលបានអាជ្ញាប័ណ្ណនេះ។ ទាំងអស់នេះត្រូវការដើម្បីត្រូវបានសម្អាត។ បន្ទាប់មកនៅក្នុងកម្មវិធីគ្រប់គ្រង Apk របស់យើងកំពុងតែស្វែងរកកន្លែងដែលជាកន្លែងដែលបានបញ្ជាក់ Bytecode មួយ។ ឥឡូវនេះចូរយើងធ្វើឱ្យ digression តូចមួយនិងរកក្រុមដែលអាចមានសក្តានុពលបង្កឱ្យមានបញ្ហា។ បន្ទាប់ពីនោះយើងគ្រាន់តែមានការចងក្រងកម្មវិធីនេះ។
បង្កើតកម្មវិធី
នេះនឹងជួយយើងគ្រប់គ្រង Apk ដូចគ្នាទាំងអស់។ នៅក្នុងកុងសូលដែលយើងមិនបានចាក់សោរជ្រើសធាតុ№14នេះ។ ល្បិចបន្ទាប់។ ប្រសិនបើកម្មវិធីនេះគឺមានភាពស្មុគស្មាញជាង, នៅពេលដែលអ្នកចាប់ផ្តើមការ, វាផ្នែកខ្លះឬទាំងស្រុងអាចបាត់បង់ប្រសិទ្ធភាពរបស់វា។ កុំបារម្ភ, វាមានន័យថាយើងមានត្រឹមពាក់កណ្តាទីនោះនិងកន្លែងផ្សេងទៀតត្រូវទៅ។ យើងបន្តអនុវត្តវិស្វកម្ម-បញ្ច្រាសគ្រប់កម្មវិធីប្រព័ន្ធប្រតិបត្តិការ Android ។ និយាយថាអ្វីដែលត្រូវធ្វើក្នុងករណីពិសេសមួយ, នៅក្នុងលក្ខខណ្ឌទូទៅគួរឱ្យសោកស្ដាយនោះគឺមិនអាចទៅរួចទេ។ ដូច្នេះមើលទៅសម្រាប់តំបន់ដែលមានបញ្ហានឹងមានរបស់ខ្លួន។ ឧទាហរណ៍ប្រសិនបើបង្អួចកម្មវិធីត្រូវបានទប់ស្កាត់ បង្អួចលេចឡើង, អ្នកគួរតែមើលឃើញកូដនេះនិងយកផ្នែកមួយដែលទទួលខុសត្រូវសម្រាប់ការសន្ទនានេះ។ ដើម្បីជួយជាមួយនឹងការនេះអាច JD-gui ។ ដូចដែលអ្នកអាចមើលឃើញ, វិស្វកម្មបញ្ច្រាសគឺមិនមែនជាការងាយស្រួលក្នុងមុខជំនួញហើយវាតម្រូវឱ្យមានហាងសន្ធឹកសន្ធាប់នៃចំណេះដឹង។ បើទោះបីជាអ្វីគ្រប់យ៉ាងត្រូវបានរត់ដោយគ្មានបញ្ហាណាមួយនោះវានឹងចាំបាច់ដើម្បីសាកល្បងការសម្តែងនៃកម្មវិធីនេះ។ នោះគឺជាការបញ្ច្រាសវិស្វកម្មគឺជាសកម្មភាពការប្រើប្រាស់ពេលវេលាច្រើនទៀត។ យើងបន្តធ្វើការរហូតដល់បញ្ហាទាំងអស់ត្រូវបានកំណត់អត្តសញ្ញាណ។
សុវត្ថិភាព
តើមានអ្វីប្រសិនបើយើងត្រូវការពារទាំងអស់ប្រព័ន្ធប្រតិបត្តិការ Android-កម្មវិធីពីវិស្វកម្មបញ្ច្រាស? ការប្រើនៃកម្មវិធីជាក់លាក់ឬការបង្កើតរចនាសម្ព័នកូដមួយដែលនឹងរំខានដើម្បីធ្វើឱ្យញែកបានសរសេរ: នៅក្នុងករណីនេះ, មានជម្រើសពីរគឺ។ ជម្រើសចុងក្រោយគឺអ្នកជំនាញមានបទពិសោធតែសមរម្យ, ដូច្នេះយើងនឹងពិចារណាតែជាវិធីសាស្រ្តជាលើកដំបូងនៃការការពារ។ ក្នុងនាមជាអ្នកប្រើប្រាស់កម្មវិធី ProGuard ឯកទេសមួយ។ កម្មវិធីនេះ, ដែលត្រូវបានប្រើដើម្បីកាត់បន្ថយ, ច្បាស់និងបង្កើនប្រសិទ្ធិភាពកូដ។ ប្រសិនបើរកកម្មវិធី "ប្រមាញ់" តាមរយៈការវា, យើងបានទទួលបានឯកសារដែលមានកន្ទុយ * .apk មានទំហំតូចជាងការដែលគាត់មាន។ ក្នុងករណីបែបនេះវានឹងមានការលំបាកក្នុងការជាច្រើនទៀតេះ។ និងអត្ថប្រយោជន៍នៃកម្មវិធីនេះគឺថាវាត្រូវបានណែនាំនៅក្នុងកម្មវិធីដោយប្រព័ន្ធប្រតិបត្តិការ Android ធ្វើឱ្យទាន់សម័យ r9 ស្ថាបនាជាមួយ។ ដូច្នេះទាញយកប្រយោជន៍ពីវាជាអ្នកអភិវឌ្ឍន៍ដែលមានឧបករណ៍ស្តង់ដារនៃការបង្កើតនិងការអភិវឌ្ឍណាមួយ។
សេចក្តីសន្និដ្ឋាន
យើងមិនអាចនិយាយបានថានេះបញ្ច្រាសអាចត្រូវបានវិស្វកម្មថាជាអ្វីស្មើភាពគ្នាតំណាងអាក្រក់ឬល្អ។ ជាការពិតណាស់ពីចំណុចនៃទិដ្ឋភាពនៃការអភិវឌ្ឍន៍ដែលបានបង្កើតកម្មវិធីមួយនេះវាមិនមែនជាព្រឹត្តិការណ៍សប្បាយរីករាយ។ ប៉ុន្តែនៅលើដៃផ្សេងទៀតនៅក្នុងករណីជាច្រើនបានជួបប្រទះសរសេរកម្មវិធីសរសេរឯកសារចាំបាច់អាចជាពេលវេលាមានតម្លៃថ្លៃតិចជាងការប្រើប្រាស់ឧបករណ៍បែបនេះ។ ទោះបីជាអ្នកអភិវឌ្ឍន៍ដើម្បីសុខភាពបញ្ច្រាសសម្រាប់វិស្វកម្មអាចបង្ហាញជាមួយសេវាល្អប្រសិនបើមានគឺជាគំនិតនៃរបៀបដើម្បីអនុវត្តអ្វីមួយ, ដែលជាគំរូល្អទោះបីជាមិនមាន, និងមិនពិតគ្រោងការច្បាស់លាស់អាចជួយជាមួយនឹងសមិទ្ធិផលនៃគោលដៅនេះ។