ȸ¿ø°¡ÀԡžÆÀ̵ð/ºñ¹øã±â
ȨÀ¸·Î

À¥¿¡¼­ ÆÄÀÏ »çÀÌÁî¿Í ÄÜÅÙÆ®(ÄÁÅÙÃ÷) ŸÀÔ ¾Ë¾Æº¸´Â »ùÇÃÄÚµå
7³â Àü
À¥¿¡¼­ ÆÄÀÏ »çÀÌÁî¿Í ÄÜÅÙÆ®(ÄÁÅÙÃ÷) ŸÀÔ ¾Ë¾Æº¸´Â »ùÇÃÄÚµå
Sample Code for checking file size and content type.


private long fileSize = 0;
private String contentType = "";
private void checkFileSizeAndType(final String openUrl){
    
    Thread thread = new Thread(new Runnable() {
        @Override
        public void run() {
            URL mUrl;
            try {
                mUrl = new URL(openUrl);
                final URLConnection connection = mUrl.openConnection();
                connection.setConnectTimeout(8000);
                connection.setReadTimeout(8000);
                connection.connect();
                String content_length = connection.getHeaderField("Content-Length");
                contentType = connection.getHeaderField("Content-Type");
                if(content_length == null){
                    fileSize = -1;
                }else{
                    fileSize = Long.parseLong(content_length);
                }
            } catch (SSLException e) {
                fileSize = -2;
            } catch (NullPointerException e) {
                fileSize = -1;
                e.printStackTrace();
            } catch (MalformedURLException e) {
                fileSize = -1;
                e.printStackTrace();
            } catch (IOException e) {
                fileSize = -1;
                e.printStackTrace();
            }

            if(fileSize == -2){
                TrustManager[] trustAllCerts = new TrustManager[]{ new X509TrustManager() {
                            public X509Certificate[] getAcceptedIssuers() {return null;}
                            public void checkClientTrusted(X509Certificate[] certs, String authType) {}
                            public void checkServerTrusted(X509Certificate[] certs, String authType) {}
                        }
                };
                try {
                    SSLContext sc = SSLContext.getInstance("SSL");
                    sc.init(null, trustAllCerts, new SecureRandom());
                    HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
                } catch (Exception e) {
                }
                try {
                    mUrl = new URL(openUrl);
                    final URLConnection connection = mUrl.openConnection();
                    connection.setConnectTimeout(8000);
                    connection.setReadTimeout(8000);
                    connection.connect();
                    String content_length = connection.getHeaderField("Content-Length");
                    if(content_length == null){
                        fileSize = -1;
                    }else{
                        fileSize = Long.parseLong(content_length);
                    }
                } catch (NullPointerException e) {
                    fileSize = -1;
                    e.printStackTrace();
                } catch (MalformedURLException e) {
                    fileSize = -1;
                    e.printStackTrace();
                } catch (IOException e) {
                    fileSize = -1;
                    e.printStackTrace();
                }
            }//SSL
            
            APLog.d(TAG, CLASS, "fileSize " + fileSize + " /contentType " + contentType);
            getMainHandler().post(new APRunnable() {
                @Override
                protected void runs() {
                    if(fileSize > 0 && isVideoContentType(contentType)) {
                        afterFileSizeAndType(true);
                    }
                    else {
                        afterFileSizeAndType(false);
                    }
                }
            });
        }
    });
    thread.setDaemon(true);
    thread.start();
}

private boolean isVideoContentType(String type) {
    if(type.contains("/")) {
        
        if(type.equalsIgnoreCase("application/x-mpegURL")
            || type.equalsIgnoreCase("application/vnd.apple.mpegurl")) return true;
        String[] t = type.split("/");
        if(t.length > 1) {
            if(t[0].equalsIgnoreCase("video")) {
                return true;
            }
        }
    }
    return false;
}

ÃßõÃßõ : 253 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
1,256
[ANDROID & PHP] °£´ÜÇÑ ·Î±×ÀÎ ÀÎÁõ
1,255
ÇöÀç½Ã°£ °¡Á®¿À±â
1,254
ÇÑ ¸Þ¼Òµå·Î Spinner ¿©·¯°³ »ç¿ëÇϱâ
1,253
startActivityForResult °ª ÁÖ°í¹Þ±â
1,252
Ä¿½ºÅÒ ´ÙÀ̾ó·Î±× ¸¸µé±â
1,251
Android ÀÇ Storage Path ¹× ÄÚµå ±¸Çö ±â¼ú
1,250
¾Èµå·ÎÀ̵忡¼­ ¶ç¿ï¼ö ÀÖ´Â ¿©·¯°¡Áö ´ÙÀ̾ó·Î±×
1,249
3°¡Áö ¸Þ¼Òµå·Î ³¡³»´Â ¾Èµå·ÎÀÌµå ¸¶½Ã¸á·Î ±ÇÇÑ È¹µæ
1,248
ACTIVITY¿¡¼­ Ȩ ¹öÆ° CATCH ÇÏ´Â ÇÔ¼ö
1,247
ÇöÀç ½ÇÇàÁßÀÎ ACTIVITY¸¦ ¾Ë¾Æ¿À´Â ÇÔ¼ö
1,246
°­Á¦·Î ȨŰ ´­¸°°Í ó·³
1,245
¾Èµå·ÎÀ̵å ÀÎÅÙÆ® / intent
1,244
¸ð¹ÙÀÏ ½º¸¶Æ®Æù Ư¼ö¹®ÀÚ ¸ðÀ½
1,243
Android/iOS UserAgent ±¸ºÐ ¹× ¸ð¹ÙÀÏÀ¥ÆäÀÌÁö¿¡¼­ ¾Û ¼³Ä¡ ¿©ºÎ È®ÀÎ
1,242
Android À¥ ºê¶ó¿ìÀú ¸µÅ©·Î ¾Û ½ÇÇà ¹æ¹ý
1,241
WebView File Upload
1,240
Get RealPath from Uri
1,239
android.net.conn.CONNECTIVITY_CHANGE
1,238
Glide ¿¡¼­ Gif ·Îµå°¡ ³Ê¹« ´À·Á¿ä.
1,237
ImageView¸¦ Width ±æÀÌ¿¡ ¸ÂÃç Height Á¶Àý
1,236
³»Àå ½ºÇÇÄ¿·Î ¿¬°á Çϱâ
1,235
Media Player¸¦ ÀÌ¿ëÇÑ À½¾Ç Àç»ý ¾îÇø®ÄÉÀÌ¼Ç ¸¸µé¾îº¸±â
1,234
DataBinding - findViewById ÀÌÁ¦ ¾È³ç~
1,233
[DataBinding] String Format Àû¿ëÇϱâ
1,232
[DataBinding] ImageView src¿¡ ¿¬µ¿ Çϱâ (ÇÔ¼ö ¿¬°á)
1,231
Scheme ¼³Á¤ ½Ã, ¾ÛÀÌ ¾Èº¸ÀÌ´Â Çö»ó
1,230
WebView¿¡¼­ Javascript Alert âÀÌ º¸ÀÌÁö ¾ÊÀ» ¶§
1,229
À¥ºäÈ­¸é¿¡¼­ ÀÓÀÇ µµ¸ÞÀÎÀ» Á¦¿ÜÇÑ »çÀÌÆ®´Â ¿ÜºÎ ºê¶ó¿ìÀú·Î
1,228
android webview url °¡·Îä±â / ³×ÀÌƼºê¿¡¼­ ÀÛ¾÷ | android
1,227
µð¹ÙÀ̽º ºÎÆýà ¾Û ½ÇÇàÇÏ´Â ¹æ¹ý / ÀçºÎÆà ½Ã ¾îÇà ½ÇÇàÇÏ´Â ¹æ¹ý
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.