Android- ზე განაცხადების დაწყების და გამართვის მიმოხილვა. დამაკავშირებელი ფიზიკური მოწყობილობა Android Studio- სთვის Android- ის აპლიკაციებზე

ადრე დავწერე. თქვენ შეგიძლიათ პრობლემის მოგვარება მკვეთრად, არ გამოიყენოთ emulator და შეამოწმოთ დაუყოვნებლივ თქვენს მობილურ მოწყობილობაში Android. მე მაქვს მშვენიერი HTC, და შეიქმნა. ასე რომ, იმისათვის, რომ აწარმოოთ განაცხადების ფიზიკურ მოწყობილობაზე:

  1. ტელეფონით, USB Debugging ფუნქციის ჩართვა. ამის გაკეთება შეგიძლიათ ამ პარამეტრების მენიუს შესასვლელად -\u003e პროგრამები -\u003e "USB Debug" ჩამრთველი
  2. დაველოდოთ მძღოლს
  3. გამორთე და კომპიუტერთან კომპიუტერთან დაკავშირება.

შეამოწმეთ, რომ ტელეფონი ხილულია კომპიუტერზე, თქვენ უნდა გააკეთოთ შემდეგი:

თუ თქვენ გაქვთ ეს გზა, შეგიძლიათ გამოიყენოთ სპეციალური პროგრამა: PDAnet. (), როგორც წესი, ინტერნეტით სარგებლობს ტელეფონით კომპიუტერიდან, მაგრამ აღმოჩნდა, რომ ის შეიცავს მძღოლების რაოდენობას ტელეფონებისთვის. როდესაც ინსტალაციისას, მე ვთხოვე მოწყობილობის მოდელი, და კიდევ უფრო ლამაზი წითელი ბალონი გააფრთხილა, რომ მძღოლი არ იყო გამოცდილი, და ყველაფერი დასრულდა, მაგრამ არა - ყველაფერი კარგად არის დადგენილი. ამის შემდეგ, მე კიდევ ერთხელ დავიწყე შემოწმება (ბრძანება ზემოთ) და ჩემი ტელეფონი გამოჩნდა მოწყობილობების სიაში.

როგორ ვიმუშაოთ Eclipse? სინამდვილეში, ყველაფერი კეთდება - უბრალოდ აწარმოებს პროექტს და ის ხსნის ტელეფონით.

Android აპლიკაციების შექმნისას, დეველოპერების უმრავლესობას სხვადასხვა ემულატორები იყენებენ. მოსახერხებელია, რადგან მაგიდის ყუთებში სხვადასხვა მოწყობილობების შესანახად არ გჭირდებათ, არ არსებობს თავის ტკივილი კომპიუტერზე დამაკავშირებელი მოწყობილობებით, მაგიდაზე მავთულხლართების არ არის. დაწკაპეთ მაუსი და ნახეთ თქვენი პროგრამის კომპიუტერი კომპიუტერის ეკრანზე. მარტივი და ელეგანტური. თუმცა, ემულატორი არ არის ტელეფონი. იგი შეზღუდულია მისი შესაძლებლობებით. თუ თქვენი აპლიკაცია იყენებს ნებისმიერ კონკრეტულ ტექნიკურ ფუნქციას, როგორიცაა კამერის, Bluetooth ან USB კავშირის ფუნქციონირება, სამუშაოების მიღებისას, სატელეფონო ზარის მიღებისას ბევრი ალბათობა შეგიძლიათ თქვათ, რომ რეალური მოწყობილობის გამართვის გარეშე ვერ გააკეთებთ. საბედნიეროდ, Eclipse შეიცავს ყველაფერს, რაც საჭიროა ამ პრობლემის მოსაგვარებლად.

ტელეფონით დამაკავშირებელი და პროგრამის დაწყება

კომპიუტერთან დაკავშირებამდე კომპიუტერთან USB მონაცემთა საკაბელო გამოყენებით, თქვენ უნდა შეასრულოთ რამდენიმე მოსამზადებელი ქმედება. ფაქტია, რომ Eclipse არის კონფიგურირებული მუშაობა ემულატორთან, და ჩვენ უნდა შეცვალოს Debugging რეჟიმი კონფიგურაცია. Ეს მარტივია. აირჩიეთ Run\u003e Debug კონფიგურაციის მენიუ, შემდეგ კი droiddebug. სამიზნე ჩანართზე, განლაგების სამიზნე შერჩევის რეჟიმში სექციაში, თქვენ უნდა დააყენოთ გადასვლის სახელმძღვანელო პოზიცია და დააჭირეთ ვრცელდება. ამდენად, სახელმძღვანელო პლატფორმის შერჩევის რეჟიმი ჩართულია. ახლა, როდესაც თქვენ დაიწყებთ განცხადებას, დიალოგურ ფანჯარაში გამოჩნდება, სადაც შეგიძლიათ აირჩიოთ ემულატორი ან ერთ-ერთი დაკავშირებული ტელეფონები.

ტელეფონით გამართვის რეჟიმში, ასევე საჭიროა მორგებული შესაბამისად. ყოფნა სახლში ეკრანზე, თქვენ უნდა დააჭიროთ მენიუს ღილაკს და იპოვოს პარამეტრების განაცხადი. ამ განაცხადში, გახსენით "აპლიკაციები" სექცია, შემდეგ კი. ეკრანზე, რომელიც იხსნება, თქვენ უნდა დააყენოთ "USB DEBGGING" პუნქტის გვერდით. ეს თანმიმდევრობა მუშაობს საუკეთესო ტელეფონებზე, მაგრამ ეს შესაძლებელია, რომ თქვენს მოწყობილობაზე, UBS Debug რეჟიმი გამოდის სხვაგან.

დააკავშირეთ ტელეფონი კომპიუტერთან და დააჭირეთ ღილაკს Eclipse- ში. დიალოგურ ფანჯარაში, რომელიც გამოჩნდება, თქვენ იხილავთ ორ სიას: "აირჩია Running Android მოწყობილობა" და "ახალი Android ვირტუალური მოწყობილობის გაშვება". პირველ რიგში ჩამოთვლილია კომპიუტერზე დაკავშირებული ტელეფონები, მეორე - ემულატორებში. აირჩიეთ თქვენი ტელეფონი პირველ სიაში. Eclipse აწარმოებს Setup განაცხადის ტელეფონი და იწყება იგი. თქვენ შეგიძლიათ გამართოთ თქვენი პროგრამა.

DDMS ტელეფონის სტატუსის მონიტორინგი (Dalvik Debug მონიტორი სამსახური)

ყველა ტელეფონის სტატუსის ინფორმაცია ხელმისაწვდომია სპეციალური ინსტრუმენტის მეშვეობით DDMS Debugging Service (Dalvik Debug Monitor Service). აწარმოებს მას, დააჭირეთ ღილაკს Android- ის გამოსახულებას Eclipse ზედა მარჯვენა კუთხეში.

DDMS ფანჯარა შედგება რამდენიმე პანელისგან. მოწყობილობების პანელი აჩვენებს ხელმისაწვდომი emulators და დაკავშირებული ტელეფონები. აქ არის პროცესების ჩამონათვალი მომენტში. თითოეული პროცესი იწყება საკუთარი ვირტუალური მანქანით. თემა ნაჩვენებია ცალკე თემა tab. ფაილი Explorer Tab განკუთვნილია მუშაობა ტელეფონის სისტემაში. მასთან ერთად, შეგიძლიათ კომპიუტერის ფაილების კოპირება ტელეფონით და უკან. ეკრანის გადაღების ღილაკის გამოყენებით შეგიძლიათ ტელეფონის ეკრანის სკრინშოტი. მწვანე ხოჭოს ღილაკს საშუალებას გაძლევთ დაურთოთ დესკერი შერჩეული პროცესისთვის. გამოიყენოს ეს ფუნქცია, თქვენ უნდა ჰქონდეთ ამ პროცესის ღია კოდექსი.

ასევე უნდა აღინიშნოს logcat ხე კომუნალური და შესაბამისი პანელი, რომელიც შეიძლება ძალიან სასარგებლო იყოს შეცდომების ძიებისას. ჟურნალთან მუშაობა ხორციელდება სპეციალური კლასის android.util.log- ის მეშვეობით. ყველაზე ხშირად გამოყენებული შემდეგი მეთოდები:

Log.e () - შესვლა შეცდომა,
Log.w () - Journaling გაფრთხილებისთვის,
Log.i () - ინფორმაციული შეტყობინებების ჟურნალი,
Logd () - journaling debugging,
Log.v () - დეტალური ჩანაწერების შესასვლელად,

როგორც პარამეტრების, ეს მეთოდები უნდა გადაეცეს ორ ხაზს. პირველი tag, რომელიც შემდეგ შეიძლება გამოყენებულ იქნას logcat- ში. მეორე არის ფაქტობრივი ინფორმაცია, რომელიც შევიდა ჟურნალში.

სავარჯიშო

ღმერთი სერვერი სექტემბერი 18, 2011 at 15:55

Android- ზე განაცხადების დაწყების და გამართვის მიმოხილვა

  • Lumber ოთახი *

განვითარებადი თქვენი პირველი Android განაცხადის, მე გაიქცა პრობლემა გაშვებული განაცხადის შემოწმება და გამართვის. ეს სტატია უნდა დაეხმაროს რომანის მომხმარებელი აირჩიოს ემულაციის ინსტრუმენტი.

Android ვირტუალური მოწყობილობა (AVD)
მონტაჟი:
ეს ემულაციის ინსტრუმენტი Empeded Android SDK.

Აწყობა:
(Eclipse- ის გამოყენების მაგალითზე)
ფანჯარა\u003e Android SDK და AVD მენეჯერი\u003e ახალი
შეიყვანეთ ვირტუალური მოწყობილობის სახელი, პლატფორმა, მეხსიერების ბარათის ზომა, ეკრანის ტიპი ...
დაწკაპეთ შექმნა AVD.

გაუშვით:
პირველი დაწყების emulator გრძელდება ძალიან დიდი ხნის განმავლობაში, განსაკუთრებით სუსტი მოწყობილობები. მაგალითად, მე არასდროს ვერ დაველოდებით ჩემს ნეტბუქზე პირველ დაწყებას, მაგრამ კომპიუტერზე პირველად პირველად იყო დარწმუნებული, რომ ემულატორი მარადიულ ციკლში შევიდა.
ემულატორის შემდგომი გაშვება ოდნავ მეტყველებს.
"Run" ღილაკს შორის დრო და ემულატორის შესახებ ტესტირების გამოყენების ძირითადი გააქტიურების გამოჩენა საშუალოდ 11 წამს გადის. სამართლიანად პროდუქტიული კომპიუტერზე გატარებული ღონისძიებები.

Დადებითი და უარყოფითი მხარეები:
+ Android OS- ის სხვადასხვა ვერსიებზე განაცხადის შესამოწმებლად, სხვადასხვა ტიპის ეკრანის მოწყობილობებზე ...
+ მაგალითად, ტესტირებისთვის საჭირო სხვადასხვა პარამეტრები, ეკრანის ორიენტაციის ცვლილება
+ ემულაცია SD ბარათი
- დიდი პერიოდის განმავლობაში "Run" ღილაკზე დაჭერით და ემულატორზე განაცხადის დაწყება
- Emulator მუშაობს ძალიან ნელა, მაგალითად, ის ფაქტი, რომ ტელეფონი დამუშავდა 1-2 წამი, emulator გააკეთა 8-10 წამში

VirtualBox + Android X86
ინსტალაცია და კონფიგურაცია:
  1. ჩამოტვირთეთ და დააინსტალირეთ ვირტუალური.
  2. ჩამოტვირთეთ სურათი.
  3. "შექმნა ვირტუალური მანქანა Linux 2.6 / სხვა Linux, 512 MB RAM, Bridged Network, HD 2 GB, გამორთვა მაუსის ინტეგრაცია. დაკავშირება ISO ფაილი და დატვირთვის ერთ-ერთი LiveCD ვარიანტი (არსებობს HDPI და MDPI ვარიანტი) "ან დაიცვას ეს ინსტრუქცია.
  4. დააჭირეთ ALT-F1 CONSOLE და TYPE NETCFG- ს გასასვლელად და გახსოვდეთ emulator IP მისამართი. დაბრუნება GUI- ში, დააჭირეთ Alt-F7.
  5. aDB დაკავშირება.

გაუშვით:
"Run" ღილაკზე დაჭერით და ემულატორზე ტესტირების გამოყენების მთავარი გააქტიურების გამოჩენა არ დაბლოკოს, მაგრამ სუბიექტური შეგრძნებების მიხედვით, თითქმის მყისიერად ხდება.

Დადებითი და უარყოფითი მხარეები:
+ მცირე პერიოდს შორის "Run" ღილაკზე დაჭერით და ემულატორის განცხადების დაწყება
+ ადგილები chopper მუშაობა
- საკმარისად ხანგრძლივი და ზოგჯერ პრობლემური ინსტალაცია
- ემულატორი მუშაობს ნელა ადგილებში, არის გამოსახულების პრობლემები (განსაკუთრებით MDPI- ზე)
- SD ბარათის ემულაციის პრობლემები, ეკრანის ორიენტაციის შეცვლა, ...
- Android OS- ის მხოლოდ ორი (სამი) ხელმისაწვდომი ვერსიები და მხოლოდ ორი ხელმისაწვდომი ეკრანის ტიპები

ტელეფონი android os უკავშირდება USB
ინსტალაცია და კონფიგურაცია:
  1. ჩართეთ ტელეფონი გამართვის რეჟიმში. (Moulds\u003e პროგრამები\u003e განვითარების\u003e USB Debugging).
  2. ჩამოტვირთეთ მძღოლი თქვენი ტელეფონისთვის.
  3. ჩვენ ვუკავშირდებით ტელეფონს PC- ზე.
  4. მძღოლების ინსტალაცია. ADB ინტერფეისის სექცია უნდა გამოჩნდეს მოწყობილობის მენეჯერად.
  5. aDB მოწყობილობები. თუ თქვენი ტელეფონი არ არის ნაჩვენები სიაში, შემდეგ დააინსტალირეთ ADB მძღოლი.

გაუშვით:
ღილაკზე "Run" ღილაკზე დაჭერით და სატელეფონო განაცხადის ძირითადი გააქტიურების გამოჩენა დაახლოებით 5 წამს იღებს.

Დადებითი და უარყოფითი მხარეები:
+ აპლიკაციის ნახვა, როგორც მომხმარებელი დაინახავს მას (ძალიან მნიშვნელოვანი მომენტი, განსაკუთრებით მაშინ, როდესაც განაცხადის ინტერფეისი და დიზაინი)
+ Multitach (თუ ტელეფონით არის)
+ ეკრანის ორიენტაციის ცვლილება, ამაჩქარებელი (თუ ტელეფონით არის)
- OS- ის მხოლოდ ერთი ვერსია და ერთი ტიპის ჩვენება
- კიდევ ერთი ობიექტი გამოჩნდება ფიზიკური დესკტოპის შესახებ

დასკვნები:
მე შევეცადე მუშაობა ამ ემულაციის ინსტრუმენტებთან და შეწყვიტა ამ ვერსიაში:
1. განაცხადის წერა და ტესტირება ტელეფონით გამოყენებით;
2. მრავალრიცხოვანი Android ვირტუალური მოწყობილობის განაცხადის ტესტირება OS ვერსიის სხვადასხვა კომბინაციით და ეკრანის ტიპი.
ვიმედოვნებ, რომ მოსმენამ ემულატორის არჩევანი გააკეთა ან თვითონ რაღაცას ისწავლა.
წარმატებებს გისურვებთ ტესტირებაში!

ამ თავის მიზანს წარმოადგენს ანდროიდის ქვეშ მინიმალური აპლიკაცია. მაგრამ ჩვენ არასდროს ვიცნობთ ზუსტად იმ შემთხვევაში, თუ ჩვენ შევძელით რაღაც სამუშაოს ჩაწერად, რათა მას რეალური აპარატში გაუშვა. ეს ჩვენ ამ სტატიას გაუმკლავდება.

სმარტფონის შესამოწმებლად ADB (Android Debug Bridge) მიერ არის გათვალისწინებული. ამ სტატიაში ჩვენ დავაყენებთ მას და ამ სმარტფონზე განაცხადის გაშვება.

რა არის adb.

Android Debug Bridge (ADB) არის უნივერსალური ბრძანების ინსტრუმენტი, რომელიც ხელს უწყობს განვითარების გარემოს შორის ურთიერთქმედებას, ჩვენს შემთხვევაში Android Studio და AVD emulators ან ფიზიკური Android მოწყობილობები შესაძლებლობა დაწყების და გამართვის განაცხადების.

ADB შედგება კლიენტისგან, სერვერისგან, რომელიც მუშაობს, როგორც ფონური პროცესი, დეველოპერის კომპიუტერზე და დემონიდან, რომლებიც მუშაობენ ფონის პროცესში, რომლებიც ემულატორს ან ნამდვილ მოწყობილობას.

კონფიგურაცია Android მოწყობილობების მუშაობა ADB- თან

USB მოწყობილობისთვის ADB- ის გამოყენების მიზნით, თქვენ უნდა ჩართოთ USB Debugging სისტემის პარამეტრებში "დეველოპერის პარამეტრების" სექციაში (სახელი შეიძლება განსხვავდებოდეს). ზოგიერთ მოწყობილობაზე, ეს სექცია დაფარულია. განიხილეთ ნაბიჯები იმ შემთხვევაში, როდესაც არ არის სასურველი პარამეტრები.

  1. გადადით პარამეტრებში, სექციაში "მოწყობილობაზე"
  2. იპოვეთ "აშენების ნომერი" პუნქტი და დააჭირეთ მას 7 ჯერ. ფანჯარა, რომელიც აცნობებს, რომ დეველოპერის რეჟიმი გააქტიურებულია.
  3. ახლა პარამეტრებში უნდა იყოს დეველოპერის პარამეტრების განყოფილება.
  4. ჩართეთ "გამართვის USB" ვარიანტი მასში.

ახლა, რომ თქვენ დააკავშირებთ მოწყობილობას კომპიუტერთან, რაც დამოკიდებულია მოდელის მიხედვით, თქვენ შეიძლება ჰქონდეთ ახალი კავშირის ვარიანტი.

ADB Setup on Windows

Windows- ის კონფიგურაციისას, პირველ რიგში, დარწმუნდით, რომ თქვენ გაქვთ Google USB მძღოლი. წასვლა SDK მენეჯერი Extras სექციაში და იპოვოს Google USB მძღოლი, დააყენოთ საჭიროების შემთხვევაში.


ახლა თქვენ უნდა განაახლოთ მძღოლი. დაკავშირება მოწყობილობა კომპიუტერზე, გადადით პანელზე -\u003e აპარატურა და ხმის -\u003e მოწყობილობის მენეჯერი იპოვეთ თქვენი მოწყობილობა. მარჯვენა ღილაკით თქვენი მოწყობილობა გახსნას კონტექსტური მენიუ და აირჩიეთ "განახლება მძღოლები ...". მძღოლი შეგიძლიათ იხილოთ SDK- ის დირექტორიაში Subfolder \\ (SDK დირექტორიაში) \\ Extras \\ Google \\ usb_driver.

როგორ შეამოწმოთ ADB პარამეტრების სისწორე?

ADB- ის შესრულების შესამოწმებლად, კომპიუტერთან დაკავშირება, ფოლდერში გაშვება \\ (SDK- ის დირექტორიაში) \\ პლატფორმის ინსტრუმენტები ბრძანებათა ხაზი და ჩაწერეთ ბრძანება:

ADB მოწყობილობები.

მსგავსი სია გამოჩნდება:

მოწყობილობების ჩამონათვალი თანდართული 5CDB2Ced მოწყობილობა

აწარმოეთ განაცხადი ნამდვილ მოწყობილობაზე

ყველა იგივე, რაც იმ შემთხვევაში, თუ გაშვებული emulator. გახსენით ჩვენი პროექტი Android Studio- ში, დააჭირეთ მწვანე სამკუთხედს, მაგრამ მოწყობილობის შერჩევის ფანჯარაში, რომელიც გამოჩნდება, აირჩიეთ მოწყობილობა.


თუ დაწერილია, რომ მოწყობილობა ოფლაინია, USB- ს და საშუალებას მისცემს USB- ს კომპიუტერს:

შედეგად, ჩვენი განაცხადი ჩანს ტელეფონით ან ტაბლეტის ეკრანზე.

დასკვნა

ეს მთავრდება თავი. ჩვენ წარმატებას მიაღწია: შეიძლება კონფიგურაცია ჩვენი სისტემა Android აპლიკაციების შემუშავება და ერთ-ერთი მათგანი წინამდებარე მოწყობილობაზე.

თუ რაღაც აქტიურად არ მუშაობს, ან დაბნეული, გთხოვთ გააუქმოთ, გთხოვთ, კომენტარებში და მე დაგეხმარებით თქვენი პრობლემის მოგვარებაში.

Decompilation და debugging Android პროგრამები

ალექსანდრე ანტიპოვი.

სტატია განიხილება, თუ როგორ უნდა დააკავშიროთ Android განაცხადის წარდგენა და ეტაპობრივად გადაცემის გზით, რომელსაც ეწოდება განაცხადის დეკომპიფლაციის შემდეგ მიღებული ინფორმაციის გამოყენებით.


სტატია განიხილება, თუ როგორ უნდა დააკავშიროთ Android განაცხადის წარდგენა და ეტაპობრივად გადაცემის გზით, რომელსაც ეწოდება განაცხადის დეკომპიფლაციის შემდეგ მიღებული ინფორმაციის გამოყენებით. სასიხარულო ამბავი ის არის, რომ გამართვის არარსებობა არ საჭიროებს superuser- ის პრივილეგიებს. აღწერილი ტექნიკა შეიძლება ძალიან სასარგებლო იყოს მობილური აპლიკაციების დროს, რადგან ჩვენ შეგვიძლია "შეაღწიოს" პროგრამაში, მიიღონ და ჩაიწეროს ინფორმაცია, რომელსაც ჩვენ, როგორც წესი, არ გვაქვს წვდომა. მაგალითად, თქვენ შეგიძლიათ intercept ტრაფიკის ადრე დაშიფვრის და მიიღეთ გასაღებები, პაროლები და ნებისმიერი სხვა ღირებული ინფორმაცია ფრენა. სტატია სასარგებლო იქნება Pensets და მობილური აპლიკაციის დეველოპერებისთვის, რომელთაც სურთ Android პლატფორმაზე შესაძლო თავდასხმების ღრმა ცოდნა.

გამოცდის გარემოს მოთხოვნები:

  • ოპერაციული სისტემა: Windows / Mac OS X / Linux
  • Java (რეკომენდებული ვერსია 1.7)
  • IDE (Eclipse, Intellij იდეა, Android სტუდია)
  • Android SDK (https://developer.android.com/sdk/index.html?hl\u003di)
  • Apktool (https://code.google.com/p/androidroid-apktool/) / apk სტუდია (http://apkstudio.codeplex.com)
  • მოწყობილობა / emulator საფუძველზე Android

სტატია გამოიყენებს შემდეგ კონფიგურაციას: Windows 8, Android Studio და Intellij იდეა. მოწყობილობა: Nexus 4 Android ვერსია 4.4.4. მე გირჩევთ ყველა კომუნალური, რომ დაამატოთ გზა გარემოს ცვლადი, რათა გაუადვილოს და დააჩქაროს ხელმისაწვდომობის ამ ინსტრუმენტები.

Android განაცხადის პაკეტი (apk) გამოყენებული სტატიაში, შეგიძლიათ ჩამოტვირთოთ აქედან ჩამოტვირთვა: Com.netspi.egruber.test.apk .

მოწყობილობის კონფიგურაცია

ქვემოთ მოყვანილი ინსტრუქცია დაგეხმარებათ ექსპერიმენტებისათვის მოწყობილობის მომზადებაში.

დეველოპერის პარამეტრების განყოფილების გააქტიურება

დაიწყოს Android მოწყობილობის, Debugging მეშვეობით USB (USB Debugging ვარიანტი) უნდა იყოს დაშვებული, რომელიც საშუალებას მოგცემთ "კომუნიკაცია" მოწყობილობის გამოყენებით ინსტრუმენტები Android SDK კომპლექტი. თუმცა, აუცილებელია დეველოპერის პარამეტრების განყოფილების გააქტიურება. მოწყობილობაზე, გადადით პარამეტრებში\u003e ტელეფონის განყოფილების შესახებ და დააჭირეთ რამდენჯერმე მშენებლობის ნომერს, რის შემდეგაც შეტყობინება უნდა გამოჩნდეს, რომ დეველოპერის პარამეტრების განყოფილება გააქტიურებულია.

ფიგურა 1: დეველოპერის პარამეტრების განყოფილების გააქტიურების მიზნით, თქვენ უნდა დააჭიროთ ნომერს რამდენჯერმე

Debugging მეშვეობით USB

დაუშვას USB პორტის მეშვეობით, გადადით პარამეტრებში\u003e დეველოპერის პარამეტრები და შეამოწმეთ ყუთი USB- ის გაუქმების შემდეგ.

ფიგურა 2: USB პარამეტრების ჩართვა

დამაკავშირებელი მოწყობილობა და დაიწყოს ADB

მოწყობილობის დამაკავშირებელ კომპიუტერზე USB პორტით კომპიუტერთან, გაგზავნა "USB Debugging მოწყობილობაზე დაკავშირებულია". თქვენ ასევე უნდა შეამოწმოთ, თუ თქვენ შეგიძლიათ დაუკავშირდეთ მოწყობილობას Android SDK- ში (Android SDK პლატფორმის ინსტრუმენტების პაკეტში) გამოყენებით Android Debug- ის გამოყენებით. ბრძანებათა სწრაფი, შეიტანეთ შემდეგი ბრძანება:

მოწყობილობა უნდა იყოს ნაჩვენები სიაში.

ფიგურა 3: დაკავშირებული მოწყობილობების ჩამონათვალი

თუ მოწყობილობა არ არის ნაჩვენები სიაში, მაშინ სავარაუდოდ მიზეზი არასწორად დამონტაჟებული მძღოლები (Windows). მოწყობილობის მიხედვით, მძღოლი შეიძლება აღმოჩნდეს Android SDK- ში ან მწარმოებლის ვებ-გვერდზე.

შეამოწმეთ განაცხადის გამართვისთვის

Android აპლიკაციების დაწყებამდე, პირველ რიგში აუცილებელია, შეამოწმოთ თუ არა ასეთი შესაძლებლობა. შემოწმება შეიძლება შესრულდეს რამდენიმე გზით.

პირველი გზა აწარმოებს Android მოწყობილობა მონიტორიშედის Android SDK (ინსტრუმენტები საქაღალდეში). Windows- ში, ფაილი ეწოდება მონიტორს. Android მოწყობილობის მონიტორის გახსნისას, მოწყობილობა გამოჩნდება მოწყობილობების განყოფილებაში.

ფიგურა 4: Android მოწყობილობა მონიტორის აპლიკაცია

თუ აპარატის ნებისმიერი განაცხადი შეიძლება გაუქმდეს, ეს პროგრამა ასევე იქნება ნაჩვენები სიაში. მე შევქმენი ტესტი პროგრამა, მაგრამ სია ცარიელია, რადგან შეუძლებელია პროგრამის გამართვა.

განაცხადის შესამოწმებლად განაცხადის შესამოწმებლად განაცხადის შესამოწმებლად ANDROIDMANIFEST.XML ფაილის შესწავლა აპლიკაციის პაკეტიდან (APK, Android განაცხადის პაკეტი). APK არის zip არქივი, რომელიც შეიცავს ყველა ინფორმაციას Android მოწყობილობაზე განაცხადის დასაწყებად.

WHIPENTS- ის აპლიკაციები Google Play Store- ისგან დატვირთულია, განაცხადის პაკეტიც დატვირთულია. ყველა გადმოწერილი APK ფაილი, როგორც წესი, ინახება მოწყობილობაზე / მონაცემთა / app საქაღალდეში. თუ არ გაქვთ superuser უფლება, თქვენ ვერ შეძლებთ მიიღოთ ფაილების ჩამონათვალი / მონაცემები / აპლიკაციის დირექტორია. თუმცა, თუ იცით სახელი apk ფაილი, შეგიძლიათ კოპირება გამოიყენოთ კომუნალური adb.. გასარკვევად სახელი apk ფაილი, შეიტანეთ შემდეგი ბრძანება:

მოწყობილობის ბრძანების ხაზი გამოჩნდება. შემდეგ შეიყვანეთ შემდეგი ბრძანება:

pM სია პაკეტები -F

მოწყობილობაზე ყველა პაკეტის ჩამონათვალი გამოჩნდება.

ფიგურა 5: მოწყობილობაზე პაკეტების ჩამონათვალი

შევხედავთ სიაში, ჩვენ ვხვდებით ტესტი აპლიკაციას.

ფიგურა 6: შექმნილი გამოცდის აპლიკაციის პაკეტი (ხაზგასმული თეთრი)

ახლა თქვენ უნდა გადაწეროთ პაკეტის ფაილი. ჩვენ გახსენით ჭურვი და შეიყვანეთ შემდეგი ბრძანება:

adb pull /data/app/ cury

სურათი 7: ასლი APK ფაილი მოწყობილობიდან სისტემაში

ახლა თქვენ უნდა გახსენით პაკეტის ფაილი და შეისწავლონ androidmanifest.xml- ის შინაარსი. სამწუხაროდ, ჩვენ არ შეგვიძლია უბრალოდ არქივი არქივი, რადგან APK ფაილი კოდირებულია ორობითი ფორმატში. კომუნალური ყველაზე ხშირად გამოიყენება დეკოდირებისათვის. apktool, მიუხედავად იმისა, რომ მე ვიყენებ Apk სტუდია.მას შემდეგ, რაც ამ განაცხადს აქვს მეგობრული გრაფიკული ინტერფეისი. შემდეგი, სტატია გეტყვით APK სტუდია.

APK Studio- ში, დააჭირეთ პატარა მწვანე ხატულას, დააყენეთ პროექტის სახელი და მიუთითეთ APK ფაილის გზა. შემდეგ მიუთითეთ, რომ ეს იყოს პროექტის გადარჩენისთვის.

ფიგურა 8: APK Studio- ში ახალი პროექტის შექმნა

APK- ის გახსნის შემდეგ აირჩიეთ androidmanifest.xml ფაილი და შეამოწმეთ აპლიკაციის პარამეტრების პარამეტრები. თუ Android დროშა: Debuggable აკლია (ან დღემდე, მაგრამ ცრუ ღირებულება არის მითითებული), ეს იმას ნიშნავს, რომ განაცხადის არ შეიძლება იყოს debugged.

ფიგურა 9: AndroidManifest.xml ფაილის შინაარსი

ფაილების მოდიფიკაცია AndroidManifest.xml

Apktool ან APK Studio Utility- ის გამოყენებით, ჩვენ შეგვიძლია შევცვალოთ ფაილები და პაკეტის კონტენტი პაკეტში. ახლა ჩვენ შევცვლით androidmanifest.xml ფაილი ისე, რომ განაცხადის გაუქმება. დაამატეთ განაცხადის შიგნით, ხაზი Android: Debuggable \u003d "True".

ფიგურა 10: აპლიკაციის შინაარსის შეცვლა

დროშის დასრულების შემდეგ "ჩაქუჩით" ხატულაზე დაჭერით და პაკეტის ხელახლა შეგროვება. Reasembly პაკეტი განთავსდება აშენების / apk დირექტორიაში.

ფიგურა 11: წარმატებით დასრულდა პაკეტი

აღდგენის შემდეგ, პაკეტის გამოწერა და თქვენ შეგიძლიათ დააინსტალიროთ იგი მოწყობილობაზე (ყველა Android აპლიკაცია უნდა იყოს ხელმოწერილი). ყველაზე აპლიკაციები არ შეამოწმებენ სერტიფიკატს, რომელთანაც ხელმოწერა ხდება. წინააღმდეგ შემთხვევაში, თქვენ უნდა შეცვალოთ კოდი, რომელიც ასრულებს ამ შემოწმებას.

ახლა თქვენ უნდა დააყენოთ reassembled პაკეტი. პირველ რიგში, ძველი აპლიკაციის წაშლა შემდეგი ბრძანების გამოყენებით:

aDB PM Uninstall

შემდეგ დააყენეთ ახალი პაკეტი:

aDB ინსტალაცია [.pk ფაილი]

თქვენ ასევე შეგიძლიათ წაშალოთ და დააინსტალიროთ პაკეტი ერთი ბრძანებით:

aDB ინსტალაცია -r [.pk ფაილი]

ფიგურა 12: დამონტაჟებული პაკეტის ინსტალაცია

შეამოწმეთ, რომ გადატვირთვის პროგრამა სწორად დაიწყო მოწყობილობაზე. თუ ყველაფერი მუშაობს, დაბრუნდით Android მოწყობილობის მონიტორზე, სადაც გამოცდის განაცხადი უნდა გამოჩნდეს.

სურათი 13: ახლა Readened განაცხადის შეიძლება debugged

განვითარების გარემოს კონფიგურაცია (IDE)

ახლა debugger შეიძლება აიყვანოს მდე readengend-edged განაცხადის, მაგრამ პირველი თქვენ უნდა შექმნათ პროექტი განვითარების გარემოში (სტატია იყენებს Intellij იდეა). ახალი პროექტის შექმნა. განაცხადის სახელის სფეროში, მიუთითეთ თვითნებური სახელი. პაკეტის სახელი სფეროში, თქვენ დააკონკრეტებთ სახელი, ზუსტად ემთხვევა ფოლდერის საქაღალდის იერარქია.

ფიგურა 14: ახალი პროექტის შექმნა Intellij იდეით

როგორც წესი, APK ფაილის სახელი ემთხვევა საქაღალდეში სტრუქტურას, თუმცა თუ არ ხართ დარწმუნებული, APK Studio- ში, შეამოწმეთ დირექტორია იერარქია საქაღალდეში, სადაც აპლიკაციები მდებარეობს. ჩემს შემთხვევაში, ფოლდერების სახელი და სტრუქტურა მთლიანად ემთხვევა (com.netspi.egruber.test).

ფიგურა 15: ტესტის განაცხადის დირექტორიების იერარქია

შეამოწმეთ "შექმნა Hello World Activity" ჩამრთველი და შეავსეთ პროექტის შექმნა (ყველა სხვა პარამეტრი რჩება default). ახალი პროექტი უნდა გამოიყურებოდეს მსგავსი რამ:

ფიგურა 16: ფოლდერების იერარქია და ახალი პროექტის ფაილები

პროექტის შექმნის შემდეგ, APK ფაილის შექმნის შემდეგ, Debugger "იცოდა" სიმბოლოების, მეთოდების, ცვლადების სახელები და ა.შ. კარგი ამბავია, რომ Android აპლიკაციები შეიძლება შეფასდეს თითქმის ხარისხის დაკარგვის გარეშე (კოდის კოდი შეესაბამება ორიგინალს). დეკომპილიტის შემდეგ, წყარო ტექსტი იმპორტირებულია განვითარების გარემოში (IDE).

განაცხადის პაკეტისგან წყაროს ტექსტების მოპოვება

პირველი თქვენ უნდა გარდაქმნას apk to jar ფაილი. შემდეგ ჩვენ ჯავის დეკომპილერის დახმარებით ჩვენ მივიღებთ განცხადების წყაროს ტექსტს. Conversion to Jar გავაკეთებთ კომუნალური dex2jar. Dex2Jar- ს აქვს D2J-DEX2JAR.BAT ფაილი, რომელიც გამოიყენება apk to jar. გუნდის სინტაქსი საკმაოდ მარტივია:

d2J-DEX2JAR.BAT [.PK ფაილი]

ფიგურა 17: კონვერტაცია apk in jar

შემდეგ გახსნა ან გადაიტანეთ მიღებული ფაილი JD-GUI (ეს არის Java Decompiler).

ფიგურა 18: jar ფაილის სტრუქტურა

JAR ფაილი უნდა იყოს ნაჩვენები იერარქიული სტრუქტურის სახით, რომლის ფარგლებშიც Java ფაილები იკითხება კოდით. გადადით ფაილში\u003e ყველა წყაროების შენახვა ZIP არქივში ყველა წყაროს ტექსტის შესამოწმებლად.

ფიგურა 19: დეკომპილიირებული ფაილის წყაროს ტექსტების შენახვა

წყაროს ტექსტების გადარჩენის შემდეგ, არქივში ცალკე დირექტორია.

ფიგურა 20: Unpacked არქივი

ახლა თქვენ უნდა იმპორტირება ორივე დირექტორიები ადრე შექმნილი პროექტის IDE. Intellij წასვლა SRC საქაღალდეში და დააკოპირეთ არქივი არქივის შინაარსი (ორი დირექტორიები).

სურათი 21: ორივე ფოლდერები გადაწერილია SRC დირექტორიაში

Intellij- ში დაბრუნება, ჩვენ ვხედავთ განახლებულ პროექტს.

სურათი 22: პროექტში გამოჩნდა წყარო ტექსტები

თუ სიიდან ზოგიერთ ელემენტზე დავინახავთ, ჩვენ ვნახავთ წყარო ტექსტს. როგორც ჩანს, ქვემოთ მოყვანილი სკრინშოტი (loginactivity კლასის წყარო ტექსტი), წყარო კოდი აღწერილია Proguard- ის გამოყენებით.

სურათი 23: Opphelted წყარო ტექსტი loginactivity

დამაკავშირებელი debugger

ახლა, როდესაც წყარო ტექსტები გამოჩნდა პროექტში, ჩვენ შეგვიძლია დავიწყოთ შესვენების მეთოდები და ცვლადები. გამტარუნარიანობის მიღწევის შემდეგ განაცხადი შეწყდება. მაგალითად, მე დამონტაჟდა გაჩერების წერტილი მეთოდით (პირდაპირ კომპონენტში), რომელიც პასუხისმგებელია ტექსტის სფეროში შეყვანილი ინფორმაციის დამუშავების შესახებ.

ფიგურა 24: კომპონენტის მეთოდის გაჩერების წერტილი

როგორც კი გაჩერებული წერტილი გამოჩნდა, დააკავშირეთ DEBugger- ის პროცესში, ეკრანზე ეკრანზე ეკრანზე დაჭერით (თქვენს IDE- ზე ხატულაზე შეიძლება განსხვავდებოდეს).

ფიგურა 25: დაკავშირება Debugger პროცესში

სურათი 26: დამაკავშირებელი პროცესების ჩამონათვალი

პროცესის შერჩევის შემდეგ, Debugger უკავშირდება მოწყობილობას.

სურათი 27: Debugger უკავშირდება მოწყობილობაზე გაშვების პროცესს

ტექსტურ სფეროში მე შევა ნომერ 42 (თუ გახსოვთ, გაჩერების წერტილი ღირს შესაბამისი მეთოდით).

სურათი 28: ტექსტურ სფეროში ჩვენ შევა ნომერ 42

ღილაკზე "Enter Code" - ის დაჭერით, განაცხადი დასრულდება გაჩერების წერტილში, რადგან Debugger არის "იცის", რომელი მეთოდი ეწოდება მოწყობილობას. შედგენილი Android განაცხადის შეიცავს debugging ინფორმაცია (მაგალითად, ცვლადი სახელები) ხელმისაწვდომია ნებისმიერი debugger თავსებადი Java Debug Wire პროტოკოლის (JDWP). თუ განაცხადი ნებადართულია Debugging- ის მიერ, რომელიც შეესაბამება JDWP- ს (ამ კატეგორიაში, ჯავასთვის განვითარების მედიასთან დაკავშირებულ უმრავლესობას) შეიძლება იყოს Android აპლიკაციის ვირტუალურ მანქანასთან და შემდეგ წაიკითხეთ და შეასრულოს გამართვის ბრძანებები.

სურათი 29: მუშაობდა გაჩერების წერტილი

ქვემოთ მოყვანილი სკრინშოტი გვიჩვენებს, რომ ჩვენ ადრე შევიდა ტექსტური ველი.

სურათი 30: კლასის ამჟამინდელი ინსტანციის ცვლადების სია

დასკვნა

ჩვენ შეგვიძლია არა მხოლოდ წაიკითხოთ მონაცემები განაცხადში, არამედ საკუთარი ჩასმა. ეს შეიძლება იყოს სასარგებლო, თუ ჩვენ, მაგალითად, მინდა შეუშალოს კოდექსის აღსრულების ნაკადი და ალგორითმის ზოგიერთი ნაწილის გვერდის ავლით. Debugger- ის გამოყენებით, ჩვენ შეგვიძლია უკეთ გავიგოთ განაცხადის ლოგიკა და ანალიზი, რაც არ არის ხელმისაწვდომი ჩვეულებრივი მომხმარებლისთვის. მაგალითად, ეს შეიძლება იყოს ძალიან სასარგებლო, რომ ნახოთ დაშიფვრის ფუნქციები გამოყენებული და დინამიური გასაღებები. გარდა ამისა, ზოგჯერ, როდესაც გამართავს ეს სასარგებლოა იმის ცოდნა, თუ რამდენად ფუნქციები ურთიერთქმედება ფაილური სისტემის ან მონაცემთა ბაზაში, თუ რა ინფორმაცია ინახება აპლიკაციით. ასეთი მანიპულაციები ხელმისაწვდომია ნებისმიერ Android მოწყობილობაზე Superuser პრივილეგიების გარეშე.