2016-09-13 2 views
-2

Ниже приведен код моего приложения для фонарикаПочему мой код Android имеет большой размер?

Его размер составляет 1,4 МБ, что слишком велико.

Так что я использовал progaurd для уменьшения размера, который заканчивается в 750 КБ, который по-прежнему огромен по сравнению с используемым мной кодом.

Почему размер большой? и как его уменьшить? или я сделал какую-то ошибку

package com.example.torch; 

import android.content.pm.PackageManager; 
import android.graphics.Color; 
import android.hardware.Camera; 
import android.os.Bundle; 
import android.support.v7.app.AlertDialog; 
import android.support.v7.app.AppCompatActivity; 
import android.view.View; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.widget.Button; 

public class MainActivity extends AppCompatActivity { 

    Button power; 
    int flag=0; 
    public Camera camera; 
    private boolean hasFlash; 


    @Override 
    protected void onDestroy() { 
     super.onDestroy(); 
    } 


    @Override 
    protected void onStop() { 
     super.onStop(); 
     try{ 

     }catch (Exception e){ 
      e.printStackTrace(); 
     } 
    } 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     power=(Button)findViewById(R.id.button1); 


     hasFlash = getApplicationContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH); 

     if(!hasFlash) { 

      AlertDialog alert = new AlertDialog.Builder(MainActivity.this).create(); 
      alert.setTitle("Error"); 
      alert.setMessage("Sorry, your device doesn't support flash light!"); 
     alert.show(); 
      return; 
      } 

     camera = Camera.open(); 
     Camera.Parameters p = camera.getParameters(); 
     p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); 
     camera.setParameters(p); 
     camera.startPreview(); 
     flag = 1; 
     power.setText("Power On"); 
     power.setBackgroundColor(Color.BLUE); 
     power.setTextColor(Color.WHITE); 



     power.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       try { 
         if (flag==0) { 
          camera = Camera.open(); 
          Camera.Parameters p = camera.getParameters(); 
          p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); 
          camera.setParameters(p); 
          camera.startPreview(); 
          flag = 1; 
          power.setText("Power On"); 
          power.setBackgroundColor(Color.BLUE); 
         } 
         else 
        { 
         camera.stopPreview(); 
         camera.release(); 
         camera = null; 
         flag=0; 
         power.setText("Power Off"); 
         power.setBackgroundColor(Color.BLACK); 
        } 
       } catch (Exception e) { 
        e.printStackTrace(); 
         } 


    } 

}); 
    } 
} 
+0

ур файл .apk является 1.4Mb или весь файл? – W4R10CK

+0

@ W4R10CK весь файл ?? –

+0

в целом файл средства в целом упаковка/папка. – W4R10CK

ответ

2

Вы расширяете AppCompatActivity, это означает, что ваш проект включает в себя v7 Library Поддержка Android, если вы не заботитесь о материальном взгляде на старых версиях Android, вы можете просто удалить его. Проверьте файл build.gradle, чтобы узнать, какие библиотеки включены, поскольку эти библиотеки сделают ваш файл apk более крупным.

Другие причины большого APK-файла может быть:

  • вводимого коэффициента
  • Активы

 Смежные вопросы

  • Нет связанных вопросов^_^