Galaxy Tablet browser sniff / detection
By : user2722707
Date : March 29 2020, 07:55 AM
it fixes the issue For the default browser, the user agent will have the device model number in it (SGH-T849). Curiously, on the Tab, I don't see a way to change the user agent. That being said, people do use alternative browsers, which may or may not include the device model number in the user agent.
|
Php mobile/tablet/desktop detect?
By : Ethan
Date : March 29 2020, 07:55 AM
|
Detect if a browser in a mobile device (iOS/Android phone/tablet) is used
By : Samantha Geitz
Date : March 29 2020, 07:55 AM
it helps some times Update (June 2016): I now try to support touch and mouse input on every resolution, since the device landscape is slowly blurring the lines between what things are and aren't touch devices. iPad Pros are touch-only with the resolution of a 13" laptop. Windows laptops now frequently come with touch screens. Other similar SO answers (see other answer on this question) might have different ways to try to figure out what sort of device the user is using, but none of them are fool-proof. I encourage you to check those answers out if you absolutely need to try to determine the device.
|
what is the best way to add mobile (or tablet...) detection within zf2?
By : Ron Lancaster
Date : March 29 2020, 07:55 AM
|
How to detect mobile or tablet in Android NDK
By : Dax
Date : March 29 2020, 07:55 AM
will be helpful for those in need I am developing a cocos2d-x application for Android devices. I would have two different screen configurations which are designed for mobile and tablet device formats. In the main.cpp I would like to add some logic which determines whether the device is tablet or mobile. This way I can load the appropriately laid out interface as the app starts up. , To just get the screen resolution, you can use ANativeWindow: code :
ANativeWindow nativeWindow = ANativeWindow_fromSurface(env, surface);
int width = ANativeWindow_getWidth(renderEngine->nativeWindow);
int height = ANativeWindow_getHeight(renderEngine->nativeWindow);
JNIEnv* jni;
app->activity->vm->AttachCurrentThread(&jni, NULL);
jclass activityClass = jni->FindClass("android/app/NativeActivity");
JNI_ASSERT(jni, activityClass);
jmethodID getWindowManager = jni->GetMethodID (activityClass, "getWindowManager" , "()Landroid/view/WindowManager;");
JNI_ASSERT(jni, getWindowManager);
jobject wm = jni->CallObjectMethod(app->activity->clazz, getWindowManager);
JNI_ASSERT(jni, wm);
jclass windowManagerClass = jni->FindClass("android/view/WindowManager");
JNI_ASSERT(jni, windowManagerClass);
jmethodID getDefaultDisplay = jni->GetMethodID(windowManagerClass, "getDefaultDisplay" , "()Landroid/view/Display;");
JNI_ASSERT(jni, getDefaultDisplay);
jobject display = jni->CallObjectMethod(wm, getDefaultDisplay);
JNI_ASSERT(jni, display);
jclass displayClass = jni->FindClass("android/view/Display");
JNI_ASSERT(jni, displayClass);
jclass displayMetricsClass = jni->FindClass("android/util/DisplayMetrics");
JNI_ASSERT(jni, displayMetricsClass);
jmethodID displayMetricsConstructor = jni->GetMethodID(displayMetricsClass, "<init>", "()V");
JNI_ASSERT(jni, displayMetricsConstructor);
jobject displayMetrics = jni->NewObject(displayMetricsClass, displayMetricsConstructor);
JNI_ASSERT(jni, displayMetrics);
jmethodID getMetrics = jni->GetMethodID(displayClass, "getMetrics", "(Landroid/util/DisplayMetrics;)V");
JNI_ASSERT(jni, getMetrics);
jni->CallVoidMethod(display, getMetrics, displayMetrics);
JNI_ASSERT(jni, true);
jfieldID xdpi_id = jni->GetFieldID(displayMetricsClass, "xdpi", "F");
JNI_ASSERT(jni, xdpi_id);
float xdpi = jni->GetFloatField( displayMetrics, xdpi_id);
JNI_ASSERT(jni, true);
|