2016-11-01 10 views
0

Ich habe ein Problem mit meiner Android-Anwendung, wenn mit der Samsung-Tastatur auf Android 6. Wenn der Benutzer ein spezielles Zeichen, wie ein Punkt oder ein Stern, die nächste Taste wird durch die letzte Eingabe ersetzt verkohlen.
Beispiel:Android Tastatur wiederholt spezielle Zeichen

Wenn Benutzertypen:

mobile.abc 

Anwendung erhält:

mobile..bc 

Zusätzlich nahm ich einen Screencast mit dem Verhalten: youtube video.

Meine Anwendung wurde mit Rhodes/Rhomobile erstellt und verwendet einen integrierten Webkit-Browser, der der Benutzeragent ist: Mozilla/5.0 (Linux; Android 6.0.1; SM-A510M Build/MMB29K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/54.0.2840.68 Mobile Safari/537.36.

Das Problem tritt nur auf, wenn der vorhersagende Text von Samsung Keyboard aktiviert ist und nur in Android 6+. Ich weiß, dass es eine Inkompatibilität zwischen dem integrierten Browser und der Samsung-Tastatur sein könnte, aber ich kann nicht alle meine Benutzer bitten, sie nur für die Verwendung mit meiner App zu deaktivieren. Daher möchte ich einen Workaround dafür haben.

Vielen Dank im Voraus durch jede Hilfe

+0

'Dank im Voraus durch jede Hilfe '. Im Voraus werden Danksager natürlich keine Hilfe bekommen. – greenapps

Antwort

1

Dies scheint ein bug zu sein. Hoffen wir auf einen Bugfix.

In der Zwischenzeit können Sie Predictive Text auf diese Weise deaktivieren:

public class NoSuggestionsWebView extends WebView { 
    public NoSuggestionsWebView(Context context) { 
     super(context); 
    } 

    public NoSuggestionsWebView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    public NoSuggestionsWebView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 

    @Override 
    public InputConnection onCreateInputConnection(EditorInfo outAttrs) { 
     InputConnection ic = super.onCreateInputConnection(outAttrs); 

     outAttrs.inputType &= ~EditorInfo.TYPE_MASK_VARIATION; /* clear VARIATION type to be able to set new value */ 
     outAttrs.inputType |= InputType.TYPE_TEXT_VARIATION_WEB_PASSWORD; /* WEB_PASSWORD type will prevent form suggestions */ 

     return ic; 
    } 
} 

Source

Aber ich denke, Predictive Text für die gesamte App deaktivieren wird UX verletzt. Vielleicht können Sie etwas in EditorInfo outAttrs finden, um die problematischen Felder zu identifizieren?

+0

Ich habe keinen Zugriff auf diese Einstellungen und Klassen, weil ich ein Framework mit diesen Einstellungen geschlossen benutze. Aber vielen Dank mit Ihrer Hilfe. –

0

Das Problem wurde durch ein Update für das Android System WebView verursacht, das nicht bereits behoben wurde.
Weiter die post on AndroidCentral zeigte von gabrielmaldi, gibt es another post Verweis auf das Problem.

Ab dem ersten Post behebt die WebView-Version 55.0.2883.36 das Problem.