2017-03-07 12 views
0

私のギャラリーから画像をアップロードして、ビットマップとして設定しています。私はギャラリーからのスクリーンショットをアップロードするたびに、私のシナリオ、ギャラリー内の画像がカメラ撮影かスクリーンショットかを確認する方法は?

ビットマップがきれいに見えると私はバック/フロントカメラから撮影された写真をアップロードすると、

フィットしかしでは、ビットマップを90度回転させました。

ギャラリー画像がカメラまたはスクリーンショットで撮影されたかどうかを検出するにはどうすればよいですか?

+1

カメラの画像は.jpgです。スクリーンショットは.pngです。 – greenapps

+0

あなたの問題に対する正しい解決策は、スクリーンショットやカメラで撮影されたものかどうかを確認することではないと思います。これはAndroidでよく知られているバグです:http://stackoverflow.com/questions/8865183/android-rotates-pictures-by-90-degrees-taken-by-camera – Waclock

答えて

1

画像の寸法が画面の寸法に合っているかどうか確認してください。考慮する画像はbitmapです。

Display display = getWindowManager().getDefaultDisplay(); 
Point size = new Point(); 
display.getSize(size); 
if(bitmap.getWidth() == size.x && bitmap.getHeight() == size.y){ 
    // Then is a screenshot 
}else{ 
    // Then is not a screenshot 
} 
+0

カメラで撮影されたかどうか調べるには? – grant

+0

@上記の答えでカメラの画像を扱うためにelse文を使用してください。Damia Fuentess –

+0

@HarshitAgrawalギャラリー内のインターネットからダウンロードされた画像もあります。 – grant

関連する問題