Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.
Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin. Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Andrid HttpURLConnection,URL

+3 ovoz
119 marta ko‘rilgan
so‘radi 12 iyun, 17 ☆☆tik⊙⊙tak☆☆ (353 bal)
tahrirlandi 12 iyun, 17 Saidolim

Android uchun yaratilgan online dasturiy ilovalarda serverda joylashgan fayillarga murojat qilish fayillarda berilgan o`zgaruvchilarga qiymatlar berish yoki qiymatlarni dasturda o`qitib olish uchun asosan quydagicha ko`dlardan foydalaniladi. manimcha bu eng sodda va boshlang`ich bilim uchun:

String login_url = "http://??????.uz/android/login_user.php";
            try {
                String user_name  = params[1];
                String password  = params[2];
                URL url = new URL(login_url);
                HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
                httpURLConnection.setRequestMethod("POST");
                httpURLConnection.setDoOutput(true);
                httpURLConnection.setDoInput(true);
                OutputStream outputStream = httpURLConnection.getOutputStream();
                BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream,"UTF-8"));

                String post_data = URLEncoder.encode("user_name", "UTF-8")+"="+ URLEncoder.encode(user_name, "UTF-8")+"&"
                        +URLEncoder.encode("password", "UTF-8")+"="+URLEncoder.encode(password, "UTF-8");

                bufferedWriter.write(post_data);
                bufferedWriter.flush();
                bufferedWriter.close();
                outputStream.close();
                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "iso-8859-1"));
                String result = "";
                String line = "";
                while ((line = bufferedReader.readLine()) != null){
                    result=line;
                }
                bufferedReader.close();
                inputStream.close();
                httpURLConnection.disconnect();
                return result;
            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }

bu judayam sodda usul chunki apk decompilyatsiya qilinganda qachon qata qanaqa so`rov amalga oshirilayotgani ma`lum bo`p qoladi. Aynan server va dastur o`rtasida bo`ladigan so`rovlarni yashirish usuli bormi? 

yoki dasturda biror bir amalni bajaruvchi kodlarni boshqa bir shifrlash usullarida yozishning imkoni bormi dmoqchiman... hattoki apk decompilyatsiya qilingandayam qaysi server va qanday fayilga murojat bo`layotgani yoki qanday qiymatlarni yuborayotgani va qabul qilayotganini yashirish maqsadida.

Lekin yuborilayotgan ma`lumotni shifrlashni keragi yo!

1 ta javob

0 ovoz
javob berdi 12 iyun, 17 Axrorxo'ja (743 bal)
Assalom alaykum,

1) apk ni obfuskatsiya qiling,bu ancha yordam beradi

2) agar requestlarni bilib olmoqchi bo'lsa decompile siz ham,oddiy http scanner orqali bilib oladi, requestlarni hafsizligini oshirish android tomondan emas server tomondan amalga oshiradi,

3) apiKey/apiSecret dgan tushuncha bor

4) sharedPrefenrence larni shifrlab saqlang
izoh qoldirdi 13 iyun, 17 ☆☆tik⊙⊙tak☆☆ (353 bal)
javobiz manga yoqdi lekin ko`p narsaga tshunmadm siz etgan usullarni qilish haqida birorta tutorial busa ssilka tashavoromismi??

bazi br dasturlani apk sini decompile qganimda apk rasmeri 40 50mb lekin dasturda ish bajarvotgan sahifalar ya`ni layout fayillari umuman yo`q, faqat facebook va shunga o`xshash sot set laga ulanish fayillari va bir nechta java fayillari, va dll fayilla buladi. Lekin dasturi ishlatganda kamida 7 8 ta sahifalar ichma ich ochilishiyam mumkun. sahifalani boshqaruvchi java va xml fayilla bo`masa yoki ko`d orqali qlinmagan bo`sa qatan kevoti shuncha narsa?
izoh qoldirdi 14 iyun, 17 Axrorxo'ja (743 bal)
Man google uchun key bergandim qidirib ko'ring android obfuscate code,android encrypt shared preference.
proguard ishlating obfuskatsiya qilib beradi
https://developer.android.com/studio/build/shrink-code.html
https://stackoverflow.com/questions/17290023/obfuscation-in-android-studio
izoh qoldirdi 15 iyun, 17 Axrorxo'ja (743 bal)
keyin yana bir narsa hozir HttpUrlConnection dan butunlay vos kechilgan, bunaqa tonna kod yozishdan foyda yo'q,okhttp+(gson/moshi/jackson) integratsiyani ko'rib chiqing,ishiz ancha yengillashadi,agar retrofit ni yam o'rganib osangiz ...
izoh qoldirdi 16 iyun, 17 ☆☆tik⊙⊙tak☆☆ (353 bal)
Haqiqatanam 2 safardan beri okhttp ishlatvoman yaxshi narsekan
izoh qoldirdi 20 iyun, 17 Axrorxo'ja (743 bal)
retrofit ni ham qarab qo'ying net bilan ishizni 2x kamaytiradi

Assalomu alaykum, yordam.uz saytimizga xush kelibsiz.

Bu saytda o`zingizni qiziqtirgan savollarga javob olishingiz va o`z sohangiz bo`yicha savollarga javob berishingiz mumkin.

Bizning Oilamizga a'zo bo`lganingiz uchun chuqur Minnatdorchilik bildiramiz !!!

Telegram kanal YordamUzRss

...