Skip to main content

Touch Screen Fix for OnePlus One. (Notification panel opening problem during phone call)

OnePlus One's screen has some bugs. One them is BACON-347 (https://jira.cyanogenmod.org/browse/BACON-347) The first touch in any location while a phone call, pulls down the notification panel. This app can fix notificaiton panel opening problem while a phone call.

Immersive mode without root or xposed mode. Now it is possible to prevent this bug FOREVER.

Please remember that this app only work during phone call. If you have other touch screen issues please report that bugs to OnePlus.

Until this post 500+ users installed and 43 of them gave 4.75 point for review. According to Flurry, this app fixed this problem more than 40.000 times for these 500+ users in just a month.

What is the problem: The problem is shown in the BACON-347 (https://jira.cyanogenmod.org/browse/BACON-347). There is some ghost touch above status bar which cause to open notification panel. After first touch to screen, phone assume that these two touches releated (Your touch and ghost touch) and tell to system there is a slide from first touch to second one. This action opens the notification panel. But if the second touch is for hang up to call phone cant do that because it assume that you want to open notification.

How this app works: During a phone call, this app put a view above status bar and absorbs the effect of ghost touch(When this happened, fix count increase) After user's first touch, if user try to hang up call, app assists user and close the call. But if user touch any other position other than close button, app closes and dont open the notification panel. That is all.

Google Play Link:
https://play.google.com/store/apps/details?id=com.kozaxinan.fixoposcreen


*This app is only trying to reduce effects of BACON-347. It is not a permanent fix. You can watch this bug's state from BACON-347*

*This app is only for OnePlus One*
*This app has no guarantee to fix problem. It can be different at every single phone*
*This app is not fix for screen driver*
You can follow that problem at BACON-55 (https://jira.cyanogenmod.org/browse/BACON-55)

This app is open source;
https://github.com/kozaxinan/OnePlus-One-Screen-Fix

Popular posts from this blog

Using Accelerometer when Screen Off

Introduction

Android Phones have a lot of built-in sensor such as gyro, proximity and accelerometer.
Using Accelerometer in Android is a known thing. For listening sensors, class or service needs a SensorEventListener implementation. An Activity is only exists when you are seeing it. When phone enters standby mode, activity which was recently active frozen and restored whenever needed. While this frozen time, activity doesn’t run. Because of that it doesn’t need sensor updates. And Android stop to listen some sensors for power management.

Services have this condition like classes (activity). In contrast to class, a service run every time, even when phone is in standby mode. Therefore Services needs sensor updates for some situations. But android stop to listen some sensor(accelerometer) in some different phones.

There is a solution for that. This is not an exact solution but it work with a lot of phones.

With a BroadcastReceiver listenIntent.ACTION_SCREEN_OFFand register sensor listener a…

How to change position of MyLocationButton on new Map API v2? Explained

When an app use map and design some layout on this map (TextView, Button or image), developer needs to change position of default buttons of map view. (MyLocationButton, ZoomControl or compass...) As far as i know, there are two possible way for changing position of myLocationButton's position.

1- * - Disable it
    * - Create new button programmatically
    * - Add animateCamera(toCurrentLocation) to onClickListener of this button
    * - And place it wherever you want

But if you don't want to write all that there is a hack for that.

2 - * - findViewById() of hardcoded button with;
ZoomControl id =0x1MyLocation button id =0x2      * - And do whatever you want:
// Find map fragment
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);

// Find myLocationButton view
View myLocationButton = mapFragment.getView().findViewById(0x2);

if (myLocationButton != null && myLocationButton.getLayoutParams() instanceof RelativeLayout.…