Ana sayfa HEPSİ Apk Dosyalarını Optimize Etmek

Apk Dosyalarını Optimize Etmek

89
0

Apk Dosyalarını Optimize Etmek

Apk Dosyalarını Optimize Etmek

Bu yazımızda sizler ile apk dosyalarını nasıl optimize edildiğini ve bu konudaki püf noktalardan bahsettik . Bu konudaki soru işaretlerinizi bizimle paylaşmak için yorum yapabilirsiniz .

Apk dosyaların optimize edilmesini isteyen kullanıcılar : 

Apk dosyasını optimize etmek istiyorsanız öncelikle hangi derleyiciyi kullandığınızı inceleyelim . Unity  oyun motorunda uygulama geliştirdiniz ancak derlediğinizde apk boyutundaki büyük artışın sebeblerine inilirse ilk başta texture dosyaları gelmektedir . Oyundaki karakterler ve maplerde kullanılan kaplamalar oyunun asıl boyutunu belirler . Oyun yapay zekası ve oyunun işleyişi ile ilgili kodlar fazla yer kaplamamaktadırlar .

Örnek olarak 100mb boyutundaki bir defense oyununda kaplamaların yaklaşık boyutu 70-80mb arasında olabilir bu durum bazen dahada fazla olabilir . Bu yüzden oyunda seçilen resimlerin optimizasyonu son derece önemlidir . Oyunda kullanılan karakterlerin texture dosyalarınıda optimize etmeyi göz ardı etmemek gerek . Gelelim seçtiğiniz derleyicinin ayar bölümüne .

Bu kısım çoğu apk derleyicisi için en önemli noktalardan birisidir . Size apk dosyası hakkında sıkça kullanılan özelliklerden bazılarını proje için kullanıp kullanmayacağınızı seçmenizi ister . Kullandığınız programın derleyici ayarları hakkında bilgi edinin .Uygulama içerisindeki gereksiz kod ve gereksiz resim , karakter .. vs kullanmaktan kaçının . Unutmayın ki apk dosyalarının optimize edilmesi zordur .

Ancak kullanıcılar tarafından en çok indirilen uygulamalar boyutları optimize edilmiş uygulamalardır . İnternet ve telefonlara gelen yenilikler her geçen gün artsa dahi optimize işleminin ayrı bir yeri olduğunu , işlevsel hızlılıkta ve kullanıcı memnuniyeti açısından faydalı olduğunu göz ardı etmemek gerek .

Örnek bir karakter kaplamasının görünümü  : 

Apk Dosyalarını Optimize Etmek

Image Optimizer hakkında :

Piyasada bir çok resim optimize programı mevcuttur . ,Resim optimize programlarında en çok aranan özellik görüntü kalitesini bozmadan sıkıştırma yapmasıdır . Görüntü sıkıştırmadaki amaç web sitelerine yüklenen resimlerin boyutlarını düşürerek daha hızlı açılmasını sağlamak .

Bu durum hem mobil hemde bilgisayar üzerinde olumlu yanları vardır . Resimlerin sıkıştırılması işlemini winrarda bulunan sfx özellik gibi düşünebilirsiniz . Resim optimize işlemi yapan kullanımı kolay bir programdan bahsedeceğim . Bu program seçtiğiniz resimlerin kalite ve sıkıştırma ayarlarını , resim uzantısı vs .. detaylı olarak ayarlayabileceğiniz kullanımı basit bir programdır .

Android uygulama geliştiren kullanıcılar : 

Android uygulama geliştiren kullanıcılar resimlerin optimizesi ile boyutları daha küçük olan apk dosyalar elde etmeye çalışırlar . tif uzantılı kaplama ve texture dosyaları apk dosyalarının asıl boyutunu belirlemektedirler . Bir oyunda Polygon‘lardan çok texture yer kaplamaktadır . Bu program tif uzantılı dosyalarada sıkıştırma yapabilmektedir . tif uzantılı dosyalardaki dpi sayısı daha fazla olduğunda jpg ve png oradanla daha fazla yer kaplar . Eğer android oyun geliştiricisi yahut web site geliştiricisi iseniz bu program size göre .

Dosya indirme linkine bu kısımdan ulaşabilirsiniz

Apk Dosyalarını Optimize Etmek

Zipalign ve kullanımı (Markete Uygulama Koymak isteyenler için ) :

Öncelikle yukarıda bahsettiğimiz optimize yöntemlerini denediğinizi ve son olarak bu yolu deneyeceğinizi varsayarsak (Markete uygulama yüklemeden önce zipalign kesinlikle şarttır yoksa uygulama kabul edilmez), Zipalign apk sıkıştırma işlemi yapan küçük bir araçtır. Mantık olarak .exe dosyalarının sıkıştırılmasında kullanılan upx,aspack,pe compressor  araçları gibi çalışır .

  •  Öncelikle .keystore dosyası oluşturmak gereklidir:

Keystore Kodu

keytool -genkey -v -keystore myCertificate.keystore -alias myKey -keyalg RSA -keysize 2048 -validity 20000

keytool jdk bin klasöründeki bir exe dosyadır. Konsol(Command Prompt) üzerinden direkt olarak çalıştırmak için, ortam değişkenlerine eklemek gerekmektedir. Bu işlemi şu şekilde yapabiliriz:

  •  Daha sonra ise pom.xml dosyasına aşağıdaki kodları ekliyoruz:

POM.XML eklenecek kodlar

Apk Dosyalarını Optimize Etmek

1
2
3
4
5
6
7
8
9
10
11
<profiles>
<profile>
<id>android-release</id>
<properties>
<sign.keystore>Url of .keystore file</sign.keystore>
<sign.alias>Your Alis Name</sign.alias>
<sign.storepass>Your Store Password</sign.storepass>
<sign.keypass>Your Key Password</sign.keypass>
</properties>
</profile>
</profiles>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jarsigner-plugin</artifactId>
<executions>
<execution>
<id>signing</id>
<goals>
<goal>sign</goal>
<goal>verify</goal>
</goals>
<phase>package</phase>
<inherited>true</inherited>
<configuration>
<removeExistingSignatures>true</removeExistingSignatures>
<archiveDirectory/>
<includes>
<include>${project.build.directory}/${project.artifactId}.apk</include>
</includes>
<keystore>${sign.keystore}</keystore>
<alias>${sign.alias}</alias>
<storepass>${sign.storepass}</storepass>
<keypass>${sign.keypass}</keypass>
<verbose>true</verbose>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<sign>
<debug>false</debug>
</sign>
<zipalign>
<verbose>true</verbose>
<inputApk>${project.build.directory}/${project.artifactId}.apk</inputApk>
<outputApk>${project.build.directory}/${project.artifactId}-signed-aligned.apk
</outputApk>
</zipalign>
<device>usb</device>
<run>
<debug>true</debug>
</run>
<sdk>
<path>C:\adt-bundle-windows-x86-20140321\sdk</path>
<!--sdk dizini-->
<platform>13</platform>
</sdk>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
</configuration>
<executions>
<execution>
<id>alignApk</id>
<phase>package</phase>
<goals>
<goal>zipalign</goal>
</goals>
</execution>
</executions>
</plugin>

Apk Dosyalarını Optimize Etmek

Eğer android uygulama yazarken Eclipse IDE’sini kullanıyorsak, ZipAlign yapmak şu şekilde :
  • Proje üzerinde sağ tıklayıp android tools-> Unsigned yada Signed seçelim.
  • Signed bölümünü seçerek Eclipse üzerinden proje imzalanması sağlanabilir.

Unsigned seçilmesi durumundaysa, komut satırında aşağıdakiler yapılır:

Üretici:
>keytool -genkey -v -keystore myCertificate.keystore -alias myKey -keyalg RSA -keysize 2048 -validity 20000

>keytool -genkey -v -keystore C:\Users\BAYBARS\Desktop\uygulamaadizipalign\myCertificate.keystore -alias myKey -keyalg RSA -keysize 2048 -validity 20000

İmzalayıcı:
>jarsigner -verbose -keystore myCertificate.keystore C:\Users\BAYBARS\Desktop\uygulamaadizipalign\uygulamaadi.apk myKey

kontrol edici:
>jarsigner -verify C:\Users\BAYBARS\Desktop\uygulamaadizipalign\uygulamaadi.apk

SDK\tools\>zipalign -v 4 C:\Users\BAYBARS\Desktop\uygulamaadizipalign\uygulamaadi.apk
C:\Users\BAYBARS\Desktop\uygulamaadizipalign\Signeduygulamaadi.apk

ZipAlign yapıldıktan ve certificate key oluşturulduktan sonra uygulamamızı markete rahatlıkla yükleyebiliriz.

.

.

PAYLAŞ
Önceki makaleDirectX 12 Güncellemesi
Sonraki makaleİphone şarj süresi uzatma yolları
Kahramanmaraş 'ta doğdum. ilkokul , orta okul ve lise eğitimimi burada aldım . 4 yıldan bu yana programlama dilleri üzerine çalışmaktayım . Asıl ilgi alanım kriptoloji ve execute in memory üzerinedir . Çocuk yaşlarımda bilgisayara olan merakımı geliştirdim , oyun oynamaktan çok oyun yapmaya heveslendim .2013 yılında yapay zeka ve Java S üzerine çalıştım . Şimdi ise tersine mühendislik , programlama ve şifreleme bilimi üzerinde durmaktayım . İstanbul Bahçeşehir Üniversitesi Bilgisayar Eğitim Teknolojileri Eğitimi okumaktayım. -"Eğitimli insanlar topluma borçludurlar. Bir işin nasıl yapılabileceğini biliyorken bir başkasının yapamadığını görüp susmaları kendilerini yetiştiren o topluma ihanettir."

BİR CEVAP BIRAK

Lütfen bir yorum yazın!
Lütfen Adınızı Girin!