Android Probleme mit mobilen Daten via lte

ATZENPOWER

Mitglied
hiho

ich hab folgendes problem...

meine app scheint bei einigen usern das problem zu haben, das diese im lte-netz keinen netzwerkzugriff mit der app haben.... andere haben jedoch keine probleme, die zb mit h+ oder so unterwegs sind und spielen wollen...
hat wer ne idee woran es liegen kann?...
 
was sind denn für infos erwünscht?

einen fehlercode kann ich nicht aufzeigen, da es ja zu keinem fehler selbst kommt....
sondern nur dazu, das die serververbindung nicht zustande kommt und das halt nur bei usern die lte nutzen...
und quellcode ist classisch....
hier mal der teil des codes der für die verbindung verantwortlich ist...
selbstverständlich sind die entsprechenden berechtigungen in der manifest eingetragen

Java:
URL url = new URL(SERVER_ADRESS);

                        Map<String,Object> paramss = new LinkedHashMap<>();
                        paramss.put("werta", finished_werta);
                        paramss.put("wertb", finished_wertb);

                        StringBuilder postData = new StringBuilder();
                        for (Map.Entry<String,Object> param : paramss.entrySet()) {
                            if (postData.length() != 0) postData.append('&');
                            postData.append(URLEncoder.encode(param.getKey(), "UTF-8"));
                            postData.append('=');
                            postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8"));
                        }
                        byte[] postDataBytes = postData.toString().getBytes("UTF-8");

                        HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
                        urlc.setRequestMethod("POST");
                        urlc.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
                        urlc.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length));

                        urlc.setConnectTimeout(CONNECTION_TIMEOUT);
                        urlc.setReadTimeout(CONNECTION_TIMEOUT);
                        urlc.setDoOutput(true);
                        urlc.setDoInput(true);

                        urlc.getOutputStream().write(postDataBytes);


                        BufferedReader in = new BufferedReader(new InputStreamReader(urlc.getInputStream()));
                        StringBuilder sb = new StringBuilder();
                        String output;
                        while ((output = in.readLine()) != null)
                            sb.append(output);
                        String result = sb.toString();
                        JSONObject jObjectv = new JSONObject(result);
 
Welche Android Version ist betroffen?
Ich habe im Hinterkopf mal gelesen zu haben, dass es bei Android 6.x.x mal zu Problemen kam. Und das ist ja noch nicht so lange her....

An Deinem Code wirds bestimmt nicht liegen, zeig doch mal Dein Manifest her, und erkläre mal, as Du so für Daten holst und wo Du sie hinspeicherst... vielleicht liegt der Hund ja nicht unbedingt bei LTE begraben.

Wird Zeit sich mal bei Apple umzuschauen.
*duckundweg*
 
hier erstmal meine manifest

Java:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="org.world_hack.mobile.app" >

    <uses-sdk
        android:minSdkVersion="13"
        android:targetSdkVersion="23" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <!-- das sind die beiden berechtigungen die nötig sind um einer app überhaupt inet zu erlauben -->

    <uses-permission android:name="com.android.vending.CHECK_LICENSE" />
   



    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <uses-library
            android:name="com.sec.android.app.multiwindow"
            android:required="false" />

        <meta-data
            android:name="com.sec.android.support.multiwindow"
            android:value="true" />

        <!-- This meta-data tag is required to use Google Play Services. -->
        <meta-data
            android:name="org.world_hack.mobile.app"
            android:value="@integer/google_play_services_version" />

        <activity
            android:name=".MainActivity"
            android:configChanges="orientation|screenSize"
            android:label="@string/app_name"
            android:windowSoftInputMode="stateHidden|adjustPan" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
                <category android:name="android.intent.category.MULTIWINDOW_LAUNCHER" />
            </intent-filter>
        </activity>

        <!-- Include the AdActivity configChanges and theme. -->
        <activity
            android:name="com.google.android.gms.ads.AdActivity"
            android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
            android:theme="@android:style/Theme.Translucent" />

        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
    </application>

</manifest>


zu den daten.... ich arbeite sehr simple....
ich sende werte per post an den server und erhalte von dem server einen JSONarray, den ich auswerte und im localstore speicher und auch von diesem lese.... das funktioniert auch ohne probleme alles via wlan, 4g usw.... nur bei usern mit lte scheinbar nicht.
es scheint auch geräteunabhängig zu sein und auch was die androidversionen angehen, sind unterschiedliche versionen und auch customroms davon betroffen.... einer meiner testuser hat 3 verschiedene handys getestet mit unterschiedlichen roms und auch via hardreset blieb der fehler bestehen
 
Das war doch ein sehr sinnvoller Kommentar. Wie soll man denn vorher wissen, ob man helfen kann, wenn es keine vernünftigen Infos gibt? Und durch die Rückfrage soll man sich nun zur Problemlösung verpflichtet haben? Ganz schön skurril! Sei doch lieber froh, dass er dich darauf aufmerksam gemacht hat.
 
...Wie soll man denn vorher wissen, ob man helfen kann, wenn es keine vernünftigen Infos gibt? ...

ich habe eine recht spezifische frage gestellt.... da meine app mit anderen netzen funktioniert, kann es theoretisch ja nur an etwas speziellem liegen... deswegen war meine frage auch simple gehalten, ob jemand ne idee hat woran es liegen kann....
meist reicht zur problemlösung auch nur der richtige denkanstoss...
 
Du schreibst bisher nur das deine App mit 4G und WLAN funktioniert. Das ist aber nicht aussagekräftig. Interessanter wäre es, ob sie auch mit Edge oder gar GRPS funktioniert.
 
An welcher Stelle bemerkst Du, dass Du keine Daten bekommst? Oder anders gefragt, wie äußert es sich Dein Problem? Kannst Du verfizieren, dass Dein POST überhaupt irgendwo abgesetzt wird?
 
sry für die verspätete antwort... aber ich bin derzeit leider etwas mehr beschäftigt...

also mit edge und grps geht die app... das kann ich ja unter anderem durch ändern der einstellungen bewirken...

der gedanke mit "ob der post überhaupt abgesetzt wird" ist doch tatsächlich einer der gedankengänge die mir an der stelle mal gar nicht in den sinn kam... das werd ich doch mal geziehlt loggen...

wann ich bemerke das keine daten da sind?... naja... via dem JSONObject(result), welcher nen entsprechenden return zurückgibt und dieser dann entsprechend ausgewertet wird und die entsprechende meldung ausgibt.
zuvor prüf ich natürlich erstmal die verbindung via urlt.getResponseCode();
wenn kk != 200 ist, besteht ein problem mit der verbindung zum server.... also zb server nicht erreichbar oder kein inet auf dem handy oder fehler in der aufgerufenen datei usw...

an der stelle hab ich mir jetzt bereits ne zusätzliche ausgabe gebastelt, um von den betroffenen usern im besten fall auch den fehlercode aufzeigen zu lassen. ich kam aber bisher nicht zum testen.

da scheinbar kk!=200 ist, wird mir die fehlermeldung ausgegeben, welche mir zeigt, das die inetverbindung nicht geht. jedoch können die user zb via messenger senden und empfangen oder browsen usw.... also deren netzwerk schein auch nicht das problem zu sein... und sobald die kein lte haben geht es dann auf einmal wieder...

zwischengedanke: könnte es evtl sein, das im lte-netz nur ip6 verwendet wird und im falle dessen, das der server nur via ip4 erreichbar wäre, das sowas zu solch ein problem führen kann?
 

Zurück
Oben