TakePhoto-軽量級Android写真処理フレームワーク

3173 ワード

TakePhoto V2.0はすでに発表されており、詳細は『TakePhoto-軽量級Android写真処理フレームワークV 2.0発表』を参照.
TakePhotoの概要
  • は、写真撮影による写真取得をサポートする
  • である.
  • は、アルバムから写真を選択する
  • をサポートする.
  • は、写真の裁断をサポートする
  • は、写真を圧縮する
  • をサポートする.
  • は、切断および圧縮パラメータのカスタマイズ
  • をサポートする.
  • は、写真撮影によりActivityが回収する自動回復
  • をサポートする.
    GitHubアドレス:https://github.com/crazycodeboy/TakePhoto
    使用方法
    TakePhotoを使用するには、次の2つの方法があります.
    方式一:継承による方式
  • は、TakePhotoActivity、TakePhotoFragmentActivity、TakePhotoFragmentの3つのうちの1つを継承します.
  • は、getTakePhoto()によってTakePhotoインスタンスを取得して関連動作を行う.
  • 次の方法を書き換える結果
  • .
    void takeSuccess(String imagePath);  
    void takeFail(String msg);
    void takeCancel();
    

    この方法は簡単で、満足する大部分の使用需要を使用して、具体的な使用はsimpleを参照してください.継承によって実際のプロジェクトの使用が満たされない場合は、以下に説明する方法で説明します.
    方式2:組み立てる方式
  • TakePhotoインスタンスTakePhoto takePhoto=new TakePhotoImpl(getActivity(),this);
  • を取得
  • は、onCreateonActivityResultonSaveInstanceStateの方法でTakePhotoペアの方法を呼び出す.
  • は、関連する動作のためにTakePhotoインスタンスを呼び出す.
  • は、TakeResultListener関連方法において結果を取得する.

  • 圧縮写真について
    写真を圧縮処理するかどうかを選択できます.
     /**
      *       
      * @param config       
      * @param showCompressDialog             
      * @return 
      */
     TakePhoto onEnableCompress(CompressConfig config,boolean showCompressDialog);
    

    eg:
    getTakePhoto().onEnableCompress(new
     CompressConfig.Builder().setMaxSize(50*1024).setMaxPixel(800).create(),
    true).onPicSelectCrop(imageUri);
    

    写真圧縮を有効にすると、TakePhotoはCompressImageを使用して写真を圧縮処理し、CompressImageは現在、写真のサイズと写真の品質を圧縮することをサポートしています.デフォルトでは、CompressImageは寸法と質量の二重圧縮をオンにしており、CompressConfigを使用することができます.Builderは、写真を圧縮したサイズと品質を設定します.圧縮の仕方を変えたいならCompressConfig.Builderは関連設定を行います.
    互換性の問題について
    TakePhotoはAndroidの公式標準APIに基づいて作成され、現在の市場で主流のRomに適している.使用中に適合性の問題が見つかった場合は、Issuesを提出してください.
  • は、一部の携帯電話の撮影に適したActivityを回収するため、TakePhotoはonSaveInstanceStateonCreateで対応するリカバリ処理を行った.
  • は、一部の携帯電話の撮影に適しているか、アルバムから写真を選択する際に画面方向が変化し、写真の撮影に失敗する問題があり、AndroidManifestで撮影することができる.xmlでは、TakePhotoを使用したActivityに対してandroid:configChanges="orientation|keyboardHidden|screenSize"構成を追加します.eg:
  • 
        
            
            
        
    
    

    プロジェクトでの使用
    ご利用の便宜上、TakePhotoはJCenterに公開されています(JCenterにプロジェクトを公開する方法に興味がある場合は、「Android libraryをJCenterに簡単に公開する方法を教えます」Gradle:
        compile 'com.jph.takephoto:takephoto_library:1.0.1'
    

    Maven:
    
      com.jph.takephoto
      takephoto_library
      1.0.1
      pom
    
    

    最後に
    TakePhotoにもっと良いアドバイスや改造があれば、Fork and Pull requestsを歓迎します.