Restore __ANDROID_API__ guards for core <android/*> APIs

This commit restores the __ANDROID_API__ guards removed in
"Add __INTRODUCED_IN to core <android/*.h> APIs.",
commit 9db409b053460e065cefb1d1caefe048f90cfff0.

Add a guard to surface_texture.h.

In choreographer.h, declare the types even for older APIs.

Bug: http://b/111668906
Test: builds
Change-Id: Ia013f48a109310f9f8ca6a3211f28fcb69dd602d
(cherry picked from commit 92b1ebea095f9cac70b81ae7382ae69583c9914d)
diff --git a/include/android/surface_texture.h b/include/android/surface_texture.h
index db10a16..a36e982 100644
--- a/include/android/surface_texture.h
+++ b/include/android/surface_texture.h
@@ -43,6 +43,7 @@
  */
 
 #include <stdint.h>
+#include <sys/cdefs.h>
 
 #include <android/native_window.h>
 
@@ -58,6 +59,8 @@
  */
 typedef struct ASurfaceTexture ASurfaceTexture;
 
+#if __ANDROID_API__ >= 28
+
 /**
  * Release the reference to the native ASurfaceTexture acquired with
  * ASurfaceTexture_fromSurfaceTexture().
@@ -157,6 +160,8 @@
  */
 int64_t ASurfaceTexture_getTimestamp(ASurfaceTexture* st) __INTRODUCED_IN(28);
 
+#endif /* __ANDROID_API__ >= 28 */
+
 __END_DECLS
 
 #endif /* ANDROID_NATIVE_SURFACE_TEXTURE_H */