Auf Thema antworten

Im letzten Thread wurde mir für größere Dateien okhttp emfohlen.

Ich habe ein Video angesehen und habe es versucht nachzumachen: [MEDIA=youtube]G89GtT1JMEc[/MEDIA]


Beim Ausführen des App Stores crasht die App.


Fehlermeldung:


[CODE=java]android.os.NetworkOnMainThreadException

                                                                                                        at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1668)

                                                                                                        at java.net.Inet6AddressImpl.lookupHostByName(Inet6AddressImpl.java:115)

                                                                                                        at java.net.Inet6AddressImpl.lookupAllHostAddr(Inet6AddressImpl.java:103)

                                                                                                        at java.net.InetAddress.getAllByName(InetAddress.java:1152)

                                                                                                        at okhttp3.Dns$Companion$DnsSystem.lookup(Dns.kt:49)

                                                                                                        at okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress(RouteSelector.kt:164)

                                                                                                        at okhttp3.internal.connection.RouteSelector.nextProxy(RouteSelector.kt:129)

                                                                                                        at okhttp3.internal.connection.RouteSelector.next(RouteSelector.kt:71)

                                                                                                        at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:205)

                                                                                                        at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)

                                                                                                        at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)

                                                                                                        at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)

                                                                                                        at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)

                                                                                                        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)

                                                                                                        at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)

                                                                                                        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)

                                                                                                        at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)

                                                                                                        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)

                                                                                                        at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)

                                                                                                        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)

                                                                                                        at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)

                                                                                                        at okhttp3.internal.connection.RealCall.execute(RealCall.kt:154)

                                                                                                        at com.andrealfredklug.klugstore.Konsole.App_spenden$3.onClick(App_spenden.java:272)

                                                                                                        at android.view.View.performClick(View.java:7792)

                                                                                                        at android.widget.TextView.performClick(TextView.java:16112)

                                                                                                        at android.view.View.performClickInternal(View.java:7769)

                                                                                                        at android.view.View.access$3800(View.java:910)

                                                                                                        at android.view.View$PerformClick.run(View.java:30218)

                                                                                                        at android.os.Handler.handleCallback(Handler.java:938)

                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99)

                                                                                                        at android.os.Looper.loopOnce(Looper.java:226)

                                                                                                        at android.os.Looper.loop(Looper.java:313)

                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:8751)

                                                                                                        at java.lang.reflect.Method.invoke(Native Method)

                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)

                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)[/CODE]


Der Code:


[CODE=java]OkHttpClient client = new OkHttpClient();


                    File file = new File(path);

                    RequestBody requestBody = new MultipartBody.Builder().setType(MultipartBody.FORM)

                            .addFormDataPart("zip", file.getName(), RequestBody.create(MediaType.parse("application/zip"), file))

                            .addFormDataPart("appname", appname)

                            .addFormDataPart("packagename", packagename)

                            .addFormDataPart("version", version)

                            .addFormDataPart("passwort", passwort)

                            .build();


                    okhttp3.Request request = new okhttp3.Request.Builder()

                            .url(url)

                            .post(requestBody)

                            .build();


                    try {

                        okhttp3.Response response = client.newCall(request).execute();

                        Log.e(TAG, "Response: " + response.body().toString());

                    } catch (IOException e) {

                        throw new RuntimeException(e);

                    }[/CODE]


Ist der Code Falsch oder muss ich was ändern, damit ich jede Datei hochladen kann?


Danke für euere Hilfe 👍



Oben