Skip to content

Instantly share code, notes, and snippets.

[tango_cloud_poi_manager]: :app:generateDebugResources
[tango_cloud_poi_manager]: :app:mergeDebugResources
[tango_cloud_poi_manager]: :app:processDebugManifest
[tango_cloud_poi_manager]: :app:processDebugResources
[tango_cloud_poi_manager]: :app:generateDebugSources
[tango_cloud_poi_manager]: :app:incrementalDebugJavaCompilationSafeguard
[tango_cloud_poi_manager]: :app:compileDebugJavaWithJavac
[tango_cloud_poi_manager]: :app:compileDebugJavaWithJavac - is not incremental (e.g. outputs have changed, no previous execution, etc.).
[tango_cloud_poi_manager]: Note: /usr/local/google/home/gfan/redwood_ws/RedwoodInternal/applications/android/utility/tango_cloud_poi_manager/app/src/main/java/com/google/atap/tango/cloudpoimanager/fragments/PoiListFragment.java uses or overrides a deprecated API.
[tango_cloud_poi_manager]: Note: Recompile with -Xlint:deprecation for details.
#include <android/log.h>
void callingMethod(JNIEnv *env, jobject instance) {
jclass clz = env->FindClass("com/sampleplayer/ar0816/jnitest/MainActivity");
jmethodID fn = env->GetMethodID(clz, "jniCallingmethod", "()V" );
if(!fn ) {
__android_log_print(ANDROID_LOG_ERROR,
"HelloJni",
"Failed to get methodID for jniCallingmethod");
return;
}
09-23 11:28:19.688 826 2547 I ActivityManager: Start proc 12766:com.sample.teapot/u0a92 for activity com.sample.teapot/.TeapotNativeActivity
09-23 11:28:19.689 826 856 W art : Long monitor contention event with owner method=void com.android.server.am.ActivityManagerService$AppDeathRecipient.binderDied() from ActivityManagerService.java:1305 waiters=0 for 651ms
09-23 11:28:19.746 12766 12766 E Minikin : addFont failed to create font /system/fonts/NanumGothic.ttf
09-23 11:28:19.746 12766 12766 E Minikin : addFont failed to create font /system/fonts/DroidSansFallback.ttf
09-23 11:28:19.746 12766 12766 E Minikin : addFont failed to create font /system/fonts/MTLmr3m.ttf
09-23 11:28:19.793 12766 12766 V DngCreator_JNI: DngCreator_nativeClassInit:
09-23 11:28:19.876 12766 12766 W linker : [ linking /system/lib/libmedia_jni.so ]
09-23 11:28:19.877 12766 12766 W linker : [ linking /system/lib/libmtp.so ]
09-23 11:28:19.877 12766 12766 W linker : [ linking /system/lib/libjhead.so ]
09-23 11:28:19.877 1276
D/AndroidRuntime( 7236):
D/AndroidRuntime( 7236): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
D/AndroidRuntime( 7236): CheckJNI is OFF
E/art ( 7236): Unrecognized option -XX:mainThreadStackSize=24K
W/art ( 7236): Ignoring unknown -Xgc option: precise
W/art ( 7236): Failed to find ELF magic in /system/framework/am.odex: dey
E/memtrack( 7236): Couldn't load memtrack module (No such file or directory)
E/android.os.Debug( 7236): failed to load memtrack module: -2
W/art ( 7236): JNI RegisterNativeMethods: attempt to register 0 native methods for android.content.res.Configuration
D/AndroidRuntime( 7236): Calling main entry com.android.commands.am.Am
@ggfan
ggfan / android-camerax-videocapture-api-gists-build.gradle
Last active February 22, 2022 22:14
camerax-videocapture-api-gists
dependencies {
def camerax_version = "1.1.0-beta01"
implementation "androidx.camera:camera-core:${camerax_version}"
implementation "androidx.camera:camera-camera2:${camerax_version}"
implementation "androidx.camera:camera-lifecycle:${camerax_version}"
implementation "androidx.camera:camera-video:${camerax_version}"
implementation "androidx.camera:camera-view:${camerax_version}"
implementation "androidx.camera:camera-extensions:${camerax_version}"
}
val selector = QualitySelector
.from(
Quality.UHD,
FallbackStrategy.higherQualityOrLowerThan(Quality.SD)
)
fun getResolutions(selector:CameraSelector,
provider:ProcessCameraProvider
): Map<Quality, Size> {
return selector.filter(provider.availableCameraInfos).firstOrNull()
?.let { camInfo ->
QualitySelector.getSupportedQualities(camInfo)
.associateWith { quality ->
QualitySelector.getResolution(camInfo, quality)!!
}
} ?: emptyMap()
val recorder = Recorder.Builder()
.setQualitySelector(qualitySelector)
.build()
// Create the VideoCapture UseCase and make it available to use
// in the other part of the application.
videoCapture = VideoCapture.withOutput(recorder)
try {
camera = cameraProvider.bindToLifecycle(
viewLifecycleOwner,
CameraSelector.DEFAULT_BACK_CAMERA,
videoCapture,
preview
)
} catch (exc: Exception) {
// we are on the main thread, let's reset the controls on the UI.
Log.e(TAG, "Use case binding failed", exc)
@androidx.annotation.OptIn(ExperimentalCamera2Interop::class)
val cameraSelector = CameraSelector.Builder()
.addCameraFilter {
it.filter { camInfo ->
val level = Camera2CameraInfo.from(camInfo)
.getCameraCharacteristic(
CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL
)
level == CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_3
}