Oglyad zasobіv, Android'de bu kurulum programlarını başlattı. Android programlarının akıllı telefonlarda özelleştirilmesi ADB'li robotlar için Android cihazların özelleştirilmesi

Eklentilerin oluşturulmasını test etmek için Android öykünücüsünün ana adımlarını gösterdik. Emülatörün varyantı, açıkçası, bunu yapmak için daha uygundur, ancak bunu yapmanız gereken şekilde yapmanız daha az olasıdır. sabit bilgisayar ve öykünücünün ve robotun doluluk oranı çok fazla zamanın yerini almaz. Ancak bu makine canavarları gibi herkesin annelerine merhamet etmesi mümkün değil, bu yüzden bu yazıda size robotlarınızı gerçek bir eklenti uzantısı yardımıyla Android Studio'da test etmenin ek bir yolunu anlatacağım.

Tsya makalesi 2 ana görüşünüz var:

1) Bilgisayarınız yeterince sıkı değil. İsveçli robotlaröykünücüsü (chi, Android Studio veya Eclipce'de);

2) Etrafta yatan eski bir tane var Android-akıllı telefon ve yogo çocuğu nerede bilmiyorum (hibe / wikidat shkoda).

Varto ayrıca, bu yöntemin üretken bilgisayarların ustalarına benzer olabileceği anlamına gelir, bir öykünücü üzerinde test etmek bile bir şeydir ve doğru akıllı telefonda bir eklenti için poster yapmak başka bir şeydir.

Ayrıca, akıllı telefonunuzu Android Studio'ya bağlamak için önce gerekli sürücü setini yüklemeniz gerekir. Kural olarak, standart bir sürücü grubuna sahip un genellikle hiçbir şeye yol açmaz, dosyanın eksenini hemen indirmenizi öneririm (korkmayın - bu bir virüs değil, antivirüs istiyorsunuz ve yapabilirsiniz' t) ve öndeki eski sürücüleri kaldırdıktan sonra, dosyayı ekleyin (bir saat boyunca telefon daha iyi kurulursa bağlanmaz).

Sürücüleri kurduktan sonra USB cihazını bilgisayara bağlayın. Gerekli ayarlar başlatılmalı ve otomatik olarak kurulmalıdır.

Ardından, Android Studio'yu başlatın. Araçlarda İdeo ---Android ve "ADB Entegrasyonunu Etkinleştir" (ADB - Android Hata Ayıklama Köprüsü) yanındaki kutuyu işaretleyin. Öyleyse, Android Studio'yu kurmanız gerekir, böylece yeşil "Çalıştır" düğmesine bastığınızda eklentiniz hemen yüklenecek ve bağlı akıllı telefona başlatılacaktır. Çalıştırmada İdemo --- Konfigürasyonları Düzenle. Yakında gelecek:

ve "Hedef Cihaz" bloğunda kutuyu işaretleyin " USB aleti ve kabartmalı Tamam.

Her şey, sanırım, her şey doğru yapılmış gibi, sürücüler ekinizi atadı, ardından programı başlatmak için düğmeye bastığınızda (bir chervonim gördük):

Programı kurun ve bağlı cihazda çalıştırın.

Elinizde yeterli değilse cihazın bağlantılarını alın ve programlayıcınızın tv sini elinizde test edin.

Varto, program kuruluysa, otomatik olarak başlamadıysa, o zaman her şey için daha iyi demektir, bu, ekin burada bir affı olduğu anlamına gelir (isterseniz, Android Studio'da açılmamış olabilir, çünkü örneğin, yalnızca koddaki önemli şeylerin ihmal edilmesi).

Umarım makaleye ihtiyacınız vardır. Girişimlerde iyi şanslar!

Son güncelleme: 09.03.2017

Standart bir proje, küçük konuların yaratılması, henüz şarkı söyleme işlevinin intikamını almak için. Doğru, bu işlevsellik hiçbir şeye zarar vermeyebilir, yalnızca ekranda Hello world! satırını görüntüleyin.

Promosyonlardan stüdyo sorumludur, ancak programın grafik arayüzünden Activity_main.xml dosyası sorumludur.

Dosya tasarımcı modunda görüntüleniyorsa ve programın tasarımı Android Studio'nun merkezinde görüntüleniyorsa, dosyanın görünümünü metne çevirmemiz gerekir. Metin modundan grafik moduna ve geri geçiş yapmak için altta iki Tasarım ve Metin düğmesi vardır.

Şimdi program kodunu değiştiriyoruz, böylece "Merhaba Android" satırını gösterecek. Hangisi için, aynı zamanda şuna benzeyen aktivite_main.xml dosyasındaki kodu değiştiriyoruz:

Bu dosyada, bir mobil cihazın ekranında metin bilgilerini görüntülemek için kullanılan TextView öğesinin atamasını değiştirin. Görüntülenecek asıl metin, android:text özniteliği tarafından belirlenir. Bu nedenle aktivite_main.xml dosyasındaki tüm kodu şu şekilde değiştiriyoruz:

Dosyayı kaydettikten sonra grafik görünümüne geçebiliriz ve mümkünse grafik tasarımcı otomatik olarak güncelleyip seçtiğimiz satırı görüntüleyecektir.

Telefonda perakende modu

Bu test programını çalıştırmak için öykünücüler veya gerçek eklentiler kullanabiliriz. Ale, ideal olarak, gerçek müştemilatlar üzerinde test etmenin en iyi yoludur.

Çalışan bir makinede test etmek üzere bir mobil cihazı test etmek için bir sürücü yüklemeniz gerekir. Google - Nexus 5/6/5x/6P veya Google Pixel gibi bir akıllı telefonunuz varsa, yoga desteği için SDK Yöneticisi aracılığıyla Google Usb Sürücü paketini yüklemeniz gerekir. Aygıtın sürücüsü başka bir satıcıysa, bu satıcı tarafından sağlanan bir USB sürücüsünü yüklemeniz gerekir. İşletim sistemi Windows 10 ise, orada, kural olarak, sistemin kendisi güncelleme merkezi aracılığıyla sürücüyü tanıyabilir ve yoga yükleyebilir.

Akıllı telefonlarda perakendeci seçeneklerinin kilitlenmesi için bekliyoruz. Bunları kullanılabilir hale getirmek için önce oturum açmanız gerekir. Ayarlar> Telefon hakkında (Ayarlar> Telefon hakkında) ve zaman zaman itin Yapı numarası.

Ön ekrana dönün ve orada uygun bir öğe göreceksiniz Geliştirici seçenekleri (Perakendeci için).

gelelim konuya perakendeciler için ve USB şarjını etkinleştirin:

Programı başlatma

Uygulamayı Android işletim sistemi ile açalım (gerçek bir uygulama üzerinde test ettiğimiz gibi) ve araç çubuğundaki yeşil oka basarak projeyi çalıştıralım.

Proje için heyecanlanalım. Bu işlem bir saat kadar sürebilir, bundan sonra başlatma için bir eklenti seçimi için bir iletişim kutusu görünecektir. Burada bilgisayar aygıtına veya öykünücüye bağlantı seçebiliriz:

Ekle'yi seçin ve OK düğmesine basın. І Başlattıktan sonra programımızı ekrana yükleyeceğiz.

daha önce yazmıştım. Sorunu kökten çözebilirsiniz, öykünücüyü yenmeyin, ancak android için bir mobil cihazda test edin. Bir mucize HTC'm var, yeni ve bende var. Ayrıca, programları fiziksel bir cihazda çalıştırmak için şunlara ihtiyacınız vardır:

  1. USB şarj işlevini etkinleştirin. Kurulum menüsü -> Programlar -> Oluştur'a giderek ve "USB Kurulumu" onay kutusunu işaretleyerek yapabilirsiniz.
  2. Sürücü kurulumunu indirin
  3. Takın ve telefonu bilgisayara yeniden bağlayın.

Telefonun bir bilgisayarda çalıştığını doğrulamak için ayağa basmak gerekir:

Bu sizin için geçerliyse özel bir program kullanabilirsiniz: PdaNet. () Bilgisayardan telefondan interneti fethetmek için ses galip geldi, ancak bu şekilde ortaya çıktı, çok sayıda telefon sürücüsünün intikamını alabilirsiniz. Onu kurduğumda, modeli çalıştırdım ve sürücünün test etmedikleri ve her şey kötü olabilir, ama değil - her şey iyi, restore edildi. Ondan sonra kontrolü tekrar yaptım (vishcha komutu) ve telefonum ekler listesinde belirdi.

Eclipse ile nasıl pratik yapılır? Aslında, her şey zaten bozuk - sadece projeye başlayın ve telefonda kazanın.

Android eklentilerinin ayrıştırılması ve ayarlanması

Alexander Antipov

Makalede, sürücüyü Android eklentisine nasıl bağlayacağınız ve programın ayrıştırılmasından sonra kaldırılan muzaffer bilgiler olarak adlandırılan yöntemlerden nasıl geçileceği anlatılacaktır.


Makalede, sürücüyü Android eklentisine nasıl bağlayacağınız ve programın ayrıştırılmasından sonra kaldırılan muzaffer bilgiler olarak adlandırılan yöntemlerden nasıl geçileceği anlatılacaktır. İyi haber şu ki, ödeme almak için süper aşındırıcı bir kişinin ayrıcalıklarına ihtiyacınız yok. Tekniğin açıklamaları, pentest sırasında daha da eski olabilir. mobil takviyeler bir saatlik robotik programlar için koda "sızabiliriz", erişemeyeceğimiz bilgileri alıp yazabiliriz. Örneğin, trafiği şifrelemeden önce aktarabilir ve anahtarları, şifreleri ve diğer değerli bilgileri alabilirsiniz. Makale, Android platformundaki olası saldırılar hakkında daha fazla bilgi edinmeleri gerektiğinden, mobil uygulama satıcılarına ve perakendecilerine yardımcı olacaktır.

Test ortamına Vimogi:

  • İşletim sistemi: Windows/Mac OS X/Linux
  • Java (sürüm 1.7 önerilir)
  • IDE (Eclipse, IntelliJ IDEA, Android Studio)
  • Android SDK'sı (https://developer.android.com/sdk/index.html?hl=i)
  • APKTool (https://code.google.com/p/android-apktool/)/APK Studio (http://apkstudio.codeplex.com)
  • Android tabanlı eklenti / emülatör

Makale şu yapılandırmaya sahip olacaktır: Windows 8, Android Studio ve IntelliJ IDEA. Ek: Nexus 4 ile Android sürümü 4.4.4. Bu araçlara erişimi kolaylaştırmak ve hızlandırmak için PATH'i değiştirmek için yardımcı programı eklemenizi öneririm.

Android uygulama paketi (APK) .

inşa edeceğim

Aşağıdaki talimatlar, deneyler için ekleri hazırlamanıza yardımcı olacaktır.

Geliştirici Seçenekleri dağıtımının etkinleştirilmesi

Android cihazdaki koçanda, Android SDK'dan ek araçlar için cihazla "konuşmanıza" izin veren USB (USB hata ayıklama seçeneği) üzerinden şarjı etkinleştirmek mümkündür. Ancak bundan önce Geliştirici seçenekleri bölümünü etkinleştirmek gerekir. Uzantıda, dağıtım Ayarları > Telefon Hakkında'ya gidin ve Yapı Numarası öğesine birkaç kez tıklayın, ardından Geliştirici seçenekleri dağıtımının etkinleştirildiğine ilişkin bilgileri görebilirsiniz.

Şekil 1: Geliştirici seçenekleri dalını etkinleştirmek için Yapı numarasına birkaç kez tıklamanız gerekir.

USB üzerinden Dozvіl nagodzhennya

USB hata ayıklamasında hata ayıklamak için Ayarlar > Geliştirici seçenekleri'ne gidin ve USB hata ayıklama hakkını ayarlayın.

Şekil 2: Etkinleştirilmiş USB hata ayıklama seçeneği

Bağlanıyor ADB'nin bu lansmanını ekleyeceğim

Bilgisayara USB portu üzerinden bağlanırsam, "Cihazda USB hata ayıklaması bağlandı" mesajı görünecektir. Ayrıca, yardım için Android SDK deposuna ( android paketi SDK Platform araçları). Komut satırına aşağıdaki komutu girin:

Ek listede görünebilir.

Şekil 3: Bağlı cihazların listesi

Ek listede görünmüyorsa, onu bulma nedeni yanlıştır. yüklü sürücüler(Pencereler için). Sürücüyü, eklentinin yedek sürümünde, Android SDK'da veya oluşturucunun sitesinde bulabilirsiniz.

Faydalar için programları yeniden kontrol etme

Android programlarını yükseltmeden önce, neyin mümkün olduğunu kontrol etmek gerekir. Perevіrku, dekіlkom yollarını vikonati yapabilir.

İlk yol başlatmaktır Android Cihaz Monitörü, Android SDK deposuna gitmek için (araç kutusunda). İÇİNDE Windows dosyası monitör.bat denir. Android Cihaz Monitörü göründüğünde, ek Cihazlar dağıtımında görünecektir.

Şekil 4: Android Cihaz Monitörü

Uzantıdaki program yüklenebildiği anda program da listede görünecektir. Bir test programı oluşturduktan, ancak liste boş olduğundan, programı sıfırlamak mümkün değildir.

Programın yükseltilebilirliğini kontrol etmenin başka bir yolu da Android uygulama paketinden (APK) AndroidManifest.xml dosyasını kontrol etmektir. APK, programı bir Android cihazda çalıştırmak için gereken tüm bilgileri içeren bir zip arşividir.

Shorazu, eğer programlar zavantazhuetsya z ise Google Oyun Mağaza, bu yazılım paketi de zavantazhuєtsya. İlgili tüm APK dosyaları eklentide /data/app klasöründe saklanır. Süper doğru haklara sahip olmadığınız için /data/app dizininden dosya listesini alamazsınız. APK dosyasının adını bilmek istiyorsanız, başka bir yardımcı program için Yogo'yu kopyalayabilirsiniz. adb. APK dosyasının adını tanımak için aşağıdaki komutu girin:

Görünür Komut satırı müştemilatlar. Aşağıdaki komutu girelim:

pm liste paketleri -f

Uzantıda tüm paketlerin bir listesi görünecektir.

Şekil 5: Paketlerin ek binaya transferi

Listeye bakın, test ekini biliyoruz.

Bebek 6: Oluşturulan bir test eki paketi (beyaz olarak görülüyor)

Şimdi paket dosyasını kopyalamanız gerekiyor. Kabuğu açın ve şu komutu girin:

adb çekme /data/app/[.apk dosyası]

Bebek 7: APK dosyasını kopyalayın ve sisteme ekleyin

Şimdi paket dosyasını açmanız ve AndroidManifest.xml'e eklemeniz gerekiyor. Maalesef, bunun gibi arşivleri, ikili formattaki kodlamaların APK dosyasını açamıyoruz. Gül üfleme için yardımcı program en sık kullanılır apk aracı vicorist istiyorum APK Stüdyosu, oskіlki tsієї programları dostça bir grafik arayüze sahiptir. Dali, APK Studio hakkında bilgi verdi.

APK Studio'da küçük yeşil simgeye tıklayın, projenin adını ayarlayın ve APK dosyasının yolunu belirtin. Projeyi kaydetmenizi size bildireceğiz.

Şekil 8: APK Studio'da yeni bir proje oluşturma

APK'yi açtıktan sonra AndroidManifest.xml dosyasını seçin ve uygulama etiketinin parametrelerine bakın. Android:debuggable bayrağı mevcutsa (veya mevcutsa, aksi takdirde değer false olarak ayarlanır), bu, programın hata ayıklanamayacağı anlamına gelir.

Bebek 9: AndroidManifest.xml dosyasına

AndroidManifest.xml dosyasının değiştirilmesi

Apktool yardımcı programının veya APK Studio'nun yardımı için dosyaları değiştirebilir ve pakete paketleyebiliriz. Programın ayarlanabilmesi için AndroidManifest.xml dosyasını hemen değiştiriyoruz. Uygulama etiketinin ortasına Android:debuggable="true" satırını ekleyin.

Şekil 10: Uygulama etiketi yerine değiştirme

Sancağı ekledikten sonra “çekiç” simgesine tıklayın ve paketi tekrar alın. Yeniden oluşturulan paket, build/apk dizininde olacaktır.

Şekil 11: Paket yeniden katlama başarılı

Yeniden paketlendikten sonra paket imzalanır ve uzantıya yeniden yüklenebilir (tüm Android programları imzalanmalıdır). Çoğu program, bir imzanın gerekli olduğu sertifikayı revize etmez. Aksi takdirde, tekrar kontrol etmenizi sağlayacak kodu değiştirmeniz gerekir.

Şimdi yeniden seçilen paketi yüklemeniz gerekiyor. Arkada, saldırgan komutun yardımı için eski programı görebiliriz:

adb pm kaldırma

Yeni bir paket yükleyelim:

adb kurulumu [.apk dosyası]

Ayrıca paketi tek bir komutla silip yükleyebilirsiniz:

adb install -r [.apk dosyası]

Şekil 12: Paketi yükleme

Programın yeniden yüklenmesi ve uzantıda doğru şekilde çalışması için ters çevirin. Her şey yolundayken, bir test eklentisinin görünebileceği Android Cihaz Monitörüne geri dönelim.

Şekil 13: Yeniden seçilen program artık yükseltilebilir

Genişletmenin ortasını bitirme (IDE)

Şimdi, programı yeniden seçmeden önce, bir vergi mükellefi kaydı yapabilirsiniz veya daha sonra geliştirmenin ortasında bir proje oluşturmanız gerekir (makale için IntelliJ IDEA seçilmiştir). Yeni bir proje oluşturuyoruz. Uygulama adı alanında birden fazla ad belirtin. Paket adı alanında, yeniden seçilen paketin klasörlerinin tam olarak nasıl sıralanacağını belirten adı belirtebilirsiniz.

Şekil 14: IntelliJ IDEA'da yeni bir proje oluşturma

APK dosyasını klasör yapısıyla adlandırın, istemiyorsanız APK Studio'da dizin hiyerarşisini program dosyalarının bulunduğu klasöre çevirin. Bence bu klasör yapısı oldukça doğru (com.netspi.egruber.test).

Şekil 15: Program dizini hiyerarşisini test edin

Sancağı kaldırın Merhaba Dünya Etkinliği Oluşturun ve projenin oluşturulmasını tamamlayın (diğer tüm parametreler geride bırakılır). Yeni proje şöyle görünebilir:

Şekil 16: Yeni projedeki klasör ve dosya hiyerarşisi

Proje oluşturulduktan sonra sembollerin, yöntemlerin, değişikliklerin vb. adlarını “bilmek” için APK dosyasına bir kod eklemek gerekir. orijinali ile birlikte). Ayrıştırmadan sonra çıktı metni IDE'den içe aktarılır.

Yazılım paketinden harici metinlerin kaldırılması

Başlamak için APK'yi bir jar dosyasına dönüştürmeniz gerekir. Programın orijinal metnini ortadan kaldırmak için bir java-decompiler ile size yardımcı olalım. Ek fayda için kavanoza dönüştürme üzerinde çalışacağız dex2jar. dex2jar, APK'yi jar'a dönüştürmenin püf noktası olan bir d2j-dex2jar.bat dosyasına sahiptir. Komut sözdizimi

d2j-dex2jar.bat [.apk dosyası]

Şekil 17: APK'yi jar'a dönüştürme

Kapatalım veya JD-GUI dosyasını (java kod çözücüsü) sürükleyelim.

Bebek 18: jar dosyasının yapısı

Jar dosyası görüntülenmekten suçlu hiyerarşik yapı, ortasında okunabilir bir çıktı koduna sahip java dosyalarının bulunduğu tüm çıktı metinlerini zip arşivlerinde paketlemek için Dosya > Tüm Kaynakları Kaydet seçeneğine gidin.

Şekil 19: Çıktı metinlerini geri derlenmiş dosyaya kaydetme

Hafta sonu metinlerini kaydettikten sonra, arşivler farklı bir dizine açılacaktır.

Bebek 20: Arşivleri açma

Şimdi, IDE'de önceden oluşturulmuş projeye karşılık gelen dizinleri içe aktarmak gerekiyor. IntelliJ'de src klasörüne gidin ve paketlenmemiş arşiv (iki dizin) yerine kopyalayın.

Şekil 21: Kopyalanan klasörü src dizinine düzenleme

Intellij'e dönersek, bachimo projeyi günceller.

Malyunok 22: Proje metinleri çıkardı

Listedeki belirli bir öğeye tıklarsak, metni bırakabiliriz. Aşağıdaki ekran görüntüsünde de görebileceğiniz gibi (LoginActivity sınıfı için çıktı metni), çıkış kodu ProGuard yardımı içindir.

Şekil 23: Çıktı metninin LoginActivity sınıfıyla birleştirilmesi

Sahip bağlantısı

Artık projede yeni metinler varsa, bu değişikliklerin yöntemleri üzerinde cıvıl cıvıl noktalar oluşturmaya başlayabiliriz. Zupinka noktasına ulaşarak program zupinyatisya olacaktır. Örnek olarak, metin alanına girilen bilgileri işlemek için kullanılan yönteme (doğrudan karmaşık kodda) bir fermuar noktası koydum.

Malyunok 24: Gizleme yönteminde sivri dişler

Diş noktası belirir belirmez, sağdaki ekranın dışındaki simgeye tıklayarak sahibini uzantıdaki işleme bağlayın üst kod(IDE'nizde simge değiştirilebilir).

Şekil 25: Yükleyiciyi sürece bağlama

Şekil 26: Sahibi bağlamak için geçiş işlemleri

Nalashtovuvach sürecinin seçiminden sonra eke geliyor.

Şekil 27: Bir ek üzerinde çalışan bir işleme bağlı Nalagojuvach

Metin kutusuna 42 sayısını giriyorum (unutmayın, ikinci yöntemin bir diş noktası var).

Şekil 28: Metin kutusuna 42 sayısını girin

“Kodu Girin” düğmesine bastıktan sonra, program uzantıda hangi yöntemin çağrıldığı nalagodzhuvach “tanımları” nın diş noktalarından kırılacaktır. Gecikme bilgilerini (örneğin, adları değiştirmek) misilleme yapmak için Android eklentilerinin derlenmesi, Java Hata Ayıklama Tel Protokolü'ne (JDWP) aşina olan tüm sahipler tarafından kullanılabilir. Programda olduğu gibi, JDWP'den ücretlendirmeye, ücretlendirmeye, tasarruf etmeye izin verilir (bu kategoride Java için ara katman yazılımı deposuna giden daha fazla vergi kullanıyoruz), gelebilirsiniz. sanal makine Android programları ve ardından ayar komutlarını okuyup revize edin.

Şekil 29: Diş noktası doğruydu

Aşağıdaki ekran görüntüsü, metin alanına girdiğimiz sayıyı göstermektedir.

Şekil 30: Değiştirilmiş Bir Akış Eşgörünümünü Bir Sınıfa Aktarma

Visnovok

Sadece ekteki verileri okuyamıyoruz, aynı zamanda yetkilileri de giriyoruz. Tse mozhe buti korisno, akscho mi, örneğin, vikonannya kodunun akışını kesmek ve deyaki delyanki algoritmasını atlamak istiyor. Ustanın yardımı için robotların ve programların mantığını daha iyi anlayabilir ve erişilemeyenleri analiz edebiliriz. büyük koristuvaçev. Örneğin, muzaffer ve dinamik anahtarlar olan şifreleme işlevlerine de göz atabiliriz. Ek olarak, bazen şarj olduğunuzda, işlevlerin nasıl etkileşime girdiğini bilirsiniz. dosya sistemi ancak veri tabanından, bilgilerin program tarafından nasıl alındığını anlamaktır. Benzer manipülasyonlar, aşırı aşındırıcılık ayrıcalıkları olmadan herhangi bir Android eklentisinde mevcuttur.

Yüklü müştemilatlar