آموزش برنامه نویسی اندروید (Android)
دسته بندی ( ۴۸۲ آموزش )
نمایش دسته بندی ها (۴۸۲ آموزش)
مباحث اولیه، در برنامه نویسی اندروید
مباحث اولیه، در برنامه نویسی اندروید 28
کار با Activity ها ، در برنامه نویسی اندروید
کار با Activity ها ، در برنامه نویسی اندروید 21
طراحی فایل های xml متناظر با Activity ها و ... (لایه گرافیکی Activity ها و ...)، در برنامه نویسی اندروید
طراحی فایل های xml متناظر با Activity ها و ... (لایه گرافیکی Activity ها و ...)، در برنامه نویسی اندروید 11
کار با برنامه Eclipse (یا همان ADT Bundle)، در برنامه نویسی اندروید
کار با برنامه Eclipse (یا همان ADT Bundle)، در برنامه نویسی اندروید 11
خطاهای رایج در برنامه Eclipse و در برنامه نویسی اندروید
خطاهای رایج در برنامه Eclipse و در برنامه نویسی اندروید 10
کار با برنامه Android Studio ، در برنامه نویسی اندروید
کار با برنامه Android Studio ، در برنامه نویسی اندروید 9
خطاهای رایج در برنامه Android Studio و در برنامه نویسی اندروید
خطاهای رایج در برنامه Android Studio و در برنامه نویسی اندروید 3
تبدیل متغیرها و سایر تبدیل ها، در برنامه نویسی اندروید
تبدیل متغیرها و سایر تبدیل ها، در برنامه نویسی اندروید 9
نمایش عکس و کار با ImageView ، در برنامه نویسی اندروید
نمایش عکس و کار با ImageView ، در برنامه نویسی اندروید 23
نمایش متن و کار با رشته ها (strings) و TextView ، در برنامه نویسی اندروید
نمایش متن و کار با رشته ها (strings) و TextView ، در برنامه نویسی اندروید 38
ساخت دکمه (Button) ، در برنامه نویسی اندروید
ساخت دکمه (Button) ، در برنامه نویسی اندروید 7
ساخت لیست (فهرست) با ListView ، در برنامه نویسی اندروید
ساخت لیست (فهرست) با ListView ، در برنامه نویسی اندروید 12
ساخت EditText، در برنامه نویسی اندروید
ساخت EditText، در برنامه نویسی اندروید 6
مجموعه ویدئوهای آموزش طراحی متریال (Material Design)، در برنامه نویسی اندروید
مجموعه ویدئوهای آموزش طراحی متریال (Material Design)، در برنامه نویسی اندروید 13
طراحی متریال (Material Design)، در برنامه نویسی اندروید
طراحی متریال (Material Design)، در برنامه نویسی اندروید 3
پخش موسیقی، در برنامه نویسی اندروید
پخش موسیقی، در برنامه نویسی اندروید 5
نمایش انیمیشن، در برنامه نویسی اندروید
نمایش انیمیشن، در برنامه نویسی اندروید 3
تغییر ویژگی های کلی برنامه اندروید
تغییر ویژگی های کلی برنامه اندروید 3
ذخیره اطلاعات با SharedPreferences ، در برنامه نویسی اندروید
ذخیره اطلاعات با SharedPreferences ، در برنامه نویسی اندروید 2
پایگاه داده (SQLite Database)، در برنامه نویسی اندروید
پایگاه داده (SQLite Database)، در برنامه نویسی اندروید 10
تبادل اطلاعات بین برنامه اندروید و سرور اینترنتی (اینترنت)، در برنامه نویسی اندروید
تبادل اطلاعات بین برنامه اندروید و سرور اینترنتی (اینترنت)، در برنامه نویسی اندروید 21
نمایش یک صفحه اینترنتی یا کدهای HTML (کار با WebView) و ساخت لینک، در برنامه نویسی اندروید
نمایش یک صفحه اینترنتی یا کدهای HTML (کار با WebView) و ساخت لینک، در برنامه نویسی اندروید 8
حلقه ها (for و while و ...)، در برنامه نویسی اندروید
حلقه ها (for و while و ...)، در برنامه نویسی اندروید 2
نمایش پیام به کاربر (Dialog و AlertDialog و Toast و Notification و ...)، در برنامه نویسی اندروید
نمایش پیام به کاربر (Dialog و AlertDialog و Toast و Notification و ...)، در برنامه نویسی اندروید 11
ویژگی های صفحه نمایش و چرخش آن، در برنامه نویسی اندروید
ویژگی های صفحه نمایش و چرخش آن، در برنامه نویسی اندروید 10
به دست آوردن ویژگی های کلی برنامه اندروید، در برنامه نویسی اندروید
به دست آوردن ویژگی های کلی برنامه اندروید، در برنامه نویسی اندروید 4
به دست آوردن ویژگی های گوشی کاربر، در برنامه نویسی اندروید
به دست آوردن ویژگی های گوشی کاربر، در برنامه نویسی اندروید 5
بازی سازی، در برنامه نویسی اندروید
بازی سازی، در برنامه نویسی اندروید 1
به اشتراک گذاری (share)، در برنامه نویسی اندروید
به اشتراک گذاری (share)، در برنامه نویسی اندروید 5
کار با فایل ها و فولدرها در حافظه خارجی (External Storage)، در برنامه نویسی اندروید
کار با فایل ها و فولدرها در حافظه خارجی (External Storage)، در برنامه نویسی اندروید 15
کار با پوشه های raw و assets ، در برنامه نویسی اندروید
کار با پوشه های raw و assets ، در برنامه نویسی اندروید 2
عملیات های ریاضی، در برنامه نویسی اندروید
عملیات های ریاضی، در برنامه نویسی اندروید 13
کار با دوربین (Camera)، در برنامه نویسی اندروید
کار با دوربین (Camera)، در برنامه نویسی اندروید 3
کار با action bar ، در برنامه نویسی اندروید
کار با action bar ، در برنامه نویسی اندروید 4
کار با کلاس ها (class) ، در برنامه نویسی اندروید
کار با کلاس ها (class) ، در برنامه نویسی اندروید 4
کار با package ها ، در برنامه نویسی اندروید
کار با package ها ، در برنامه نویسی اندروید 2
نرم افزارهای شبیه ساز برای اجرای برنامه های اندروید بر روی سیستم عامل کامپیوتر (مثل ویندوز)
نرم افزارهای شبیه ساز برای اجرای برنامه های اندروید بر روی سیستم عامل کامپیوتر (مثل ویندوز) 2
امنیت، در برنامه نویسی اندروید
امنیت، در برنامه نویسی اندروید 1
Thread ها، در برنامه نویسی اندروید
Thread ها، در برنامه نویسی اندروید 3
سرویس ها (Service)، در برنامه نویسی اندروید
سرویس ها (Service)، در برنامه نویسی اندروید 9
BroadcastReceiver ، در برنامه نویسی اندروید
BroadcastReceiver ، در برنامه نویسی اندروید 0
تاریخ و زمان و تمامی موارد مرتبط با زمان (عملیات های زمان بندی شده و ...)، در برنامه نویسی اندروید
تاریخ و زمان و تمامی موارد مرتبط با زمان (عملیات های زمان بندی شده و ...)، در برنامه نویسی اندروید 11
AsyncTask ، در برنامه نویسی اندروید
AsyncTask ، در برنامه نویسی اندروید 2
آرایه ها (Arrays)، در برنامه نویسی اندروید
آرایه ها (Arrays)، در برنامه نویسی اندروید 3
لیست آرایه ای (ArrayList)، در برنامه نویسی اندروید
لیست آرایه ای (ArrayList)، در برنامه نویسی اندروید 6
رنگ ها (Colors)، در برنامه نویسی اندروید
رنگ ها (Colors)، در برنامه نویسی اندروید 3
Fragment ها و Tab بندی، در برنامه نویسی اندروید
Fragment ها و Tab بندی، در برنامه نویسی اندروید 8
معرفی کتابخانه ها (Libraries)، در برنامه نویسی اندروید
معرفی کتابخانه ها (Libraries)، در برنامه نویسی اندروید 1
ساخت ProgressDialog یا ProgressBar برای نمایش میزان پیشرفت اجرای یک سری عملیات، در برنامه نویسی اندروید
ساخت ProgressDialog یا ProgressBar برای نمایش میزان پیشرفت اجرای یک سری عملیات، در برنامه نویسی اندروید 3
نسخه اندروید (Android version) و API level (نسخه API) ، در برنامه نویسی اندروید
نسخه اندروید (Android version) و API level (نسخه API) ، در برنامه نویسی اندروید 1
لرزاندن گوشی (vibrate)، در برنامه نویسی اندروید
لرزاندن گوشی (vibrate)، در برنامه نویسی اندروید 2
پرداخت درون برنامه ای، در برنامه نویسی اندروید
پرداخت درون برنامه ای، در برنامه نویسی اندروید 1
 پروژه های اندروید Open Source کاربران کلیدستان
پروژه های اندروید Open Source کاربران کلیدستان 2
ساخت امکانات جانبی (جستجو، لیست علاقه مندی، لوگو، منو و ...) برای برنامه اندروید
ساخت امکانات جانبی (جستجو، لیست علاقه مندی، لوگو، منو و ...) برای برنامه اندروید 5
مباحث عمومی، در برنامه نویسی اندروید
مباحث عمومی، در برنامه نویسی اندروید 35

استفاده از HttpGet برای دریافت اطلاعات از یک صفحه اینترنتی (آدرس URL)، با روش GET و به صورت AsyncTask ، در برنامه نویسی اندروید

در این مبحث قصد داریم که نحوه استفاده از HttpGet برای دریافت اطلاعات از یک صفحه اینترنتی (یک URL) را شرح بدهیم. همان طور که از نام HttpGet مشخص است، HttpGet از روش GET برای دریافت اطلاعات از صفحه اینترنتی استفاده می کند.

برای این مبحث آموزشی، از آدرس اینترنتی زیر استفاده می کنیم :


http://www.kelidestan.com/fixed-url/kelidestan-1.php

همان طور که مشاهده می کنید، صفحه اینترنتی مورد نظر، در سایت کلیدستان (http://www.kelidestan.com) قرار دارد و آن را در پوشه ای (folder) به نام fixed-url قرار داده ایم. نام این پوشه، به این دلیل برایر fixed-url انتخاب شده است، که در آینده حواسمان باشد که نباید آدرس URL صفحات موجود در این پوشه، تغییر کند، بنابراین شما با خیال راحت و بدون نگرانی از تغییر آدرس URL و یا محتوای صفحات، می توانید از آنها استفاده کنید.

در صفحه kelidestan-1.php ، کدهای PHP زیر را می نویسیم :


<?php
if(isset($_GET['name']) && isset($_GET['city'])){
    $name = $_GET['name'];
    $name = htmlspecialchars($name);
    $name = strip_tags($name);
       
    $city = $_GET['city'];
    $city = htmlspecialchars($city);
    $city = strip_tags($city);
       
    echo "name : ".$name." --- city : ".$city."";
}
?>

بنابراین کدهای PHP صفحه، ابتدا چک می کنند که مقادیری برای دو متغیر name و city ، با روش GET ، به صفحه ارسال شده باشد (اگر ارسال نشده باشد، هیچ کد دیگری اجرا نمی شود و خروجی به صورت صفحه خالی خواهد بود). سپس در صورتی که برای هر دو متغیر، مقدار به صفحه ارسال شده باشد، مقادیر دریافت شده و در دو متغیر با همان نام ها، ذخیره می شود. سپس یک عبارت که در آن، مقدار متغیرها نیز وجود دارد، در خروجی چاپ می شود.

اگر در کدها دقت کنید، دو تابع htmlspecialchars و strip_tags را بر روی مقادیر دریافت شده، اعمال کرده ایم. این عمل برای ایجاد امنیت بیشتر است زیرا ممکن است که یک کاربر، به عنوان هکر، تعدادی کد مخرب را در میان ورودی ها قرار بدهد. در این مورد، در مبحثی دیگر صحبت خواهیم کرد، اما بد نیست به طور مختصر بگوییم که تابع htmlspecialchars ، باعث می شود که هنگام چاپ یک عبارت در خروجی صفحه، اگر تگ های (tags) مربوط به HTML در آن عبارت وجود دارند، به جای اجرا شدن به عنوان کد، تنها در خروجی نمایش داده شوند. همچنین تابع strip_tags ، برای حذف تگ های HTML و PHP موجود در یک عبارت به کار می رود. اگر در آینده بخش های امنیتی بیشتری به این کدها اضافه کنیم، شما مطمئن باشید که در خروجی صفحات تاثیری نخواهد داشت و با اطمینان می توانید از این صفحات استفاده کنید (همان طور که گفتیم، آدرس URL آنها همیشه ثابت خواهد بود و عملکرد آنها تغییری نخواهد کرد و فقط ممکن است صلاح بدانیم که بخشی از کدهای امنیتی را در اینجا نمایش ندهیم).

برای تعیین مقدار برای متغیرها (به روش GET)، باید آدرس اینترنتی زیر را در مرورگر خود اجرا کنید (مقادیر انتخابی برای دو متغیر، در آدرس URL صفحه، نوشته می شود):


http://www.kelidestan.com/fixed-url/kelidestan-1.php?name=hamid&city=tehran

خروجی صفحه، به صورت زیر می باشد :


name : hamid --- city : tehran

استفاده از مرورگر اینترنت، تنها برای آزمایش عملکرد صفحه بود، اما اکنون که از صحیح بودن عملکرد صفحه اینترنتی مطمئن شده ایم، می خواهیم در برنامه اندروید خود، از کدهایی استفاده کنیم که همین دو مقدار را برای دو متغیر، به صفحه ارسال کند و سپس نتیجه را از صفحه دریافت کرده و در یک TextView به ما نمایش بدهد.

قبل از هر چیز، باید به برنامه اندروید خود، اجازه دسترسی به اینترنت را بدهیم. برای این منظور، باید کد زیر را به کدهای فایل AndroidManifest.xml پروژه اندروید، اضافه کنیم :


<uses-permission android:name="android.permission.INTERNET" />

علاوه بر این، بخشی از کدها نیز برای چک کردن اتصال به اینترنت می باشد و برای آنها، باید اجازه دسترسی زیر نیز به فایل AndroidManifest.xml افزوده شود :


<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

فرض کنید که نام package پروژه اندروید، برابر com.kelidestan.httpget و نام activity اصلی آن برابر MainActivity.java و نام فایل xml متناظر با activity اصلی برابر activity_main.xml باشد.

با توجه به فرض هایی که بیان کردیم، کدهای فایل AndroidManifest.xml ، به صورت زیر خواهد بود :


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kelidestan.httpget"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8" />
   
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.kelidestan.httpget.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

</manifest>

همچنین کدهای فایل activity_main.xml به صورت زیر می باشد (در آن یک TextView تعریف کرده ایم) :


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</RelativeLayout>

و کدهای فایل MainActivity.java که همان activity اصلی پروژه اندروید است را به صورت زیر می نویسیم :


package com.kelidestan.httpget;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_main);
               
                new NetCheck().execute();
        }

        /**
         * Async Task to check whether internet connection is working.
         **/


            private class NetCheck extends AsyncTask<String,String,Boolean>
            {
                private ProgressDialog nDialog;

                @Override
                protected void onPreExecute(){
                    super.onPreExecute();
                    nDialog = new ProgressDialog(MainActivity.this);
                    nDialog.setTitle("Checking Network");
                    nDialog.setMessage("Loading..");
                    nDialog.setIndeterminate(false);
                    nDialog.setCancelable(true);

                    nDialog.show();
                }
                /**
                 * Gets current device state and checks for working internet connection by trying Google.
                **/

                @Override
                protected Boolean doInBackground(String... args){

                    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
                    NetworkInfo netInfo = cm.getActiveNetworkInfo();
                    if (netInfo != null && netInfo.isConnected()) {
                        try {
                            URL url = new URL("http://www.google.com");
                            HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
                            urlc.setConnectTimeout(3000);
                            urlc.connect();
                            if (urlc.getResponseCode() == 200) {
                                return true;
                            }
                        } catch (MalformedURLException e1) {
                            // TODO Auto-generated catch block
                            e1.printStackTrace();
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }
                    return false;

                }
                @Override
                protected void onPostExecute(Boolean th){

                    if(th == true){
                        nDialog.dismiss();
                        new GetData().execute();
                    }
                    else{
                        nDialog.dismiss();
                        Toast.makeText(getApplicationContext(), "Error in Network Connection", Toast.LENGTH_SHORT).show();
                    }
                }
            }
           
           
            /**
             * Async Task to get data from URL
             **/

            private class GetData extends AsyncTask<String, String, String> {

                private ProgressDialog pDialog;
                private InputStream is = null;
                private String url = "http://www.kelidestan.com/fixed-url/kelidestan-1.php?name=hamid&city=tehran";
                private String page_output = "";

                @Override
                protected void onPreExecute() {
                    super.onPreExecute();

                    pDialog = new ProgressDialog(MainActivity.this);
                    pDialog.setTitle("Contacting Servers");
                    pDialog.setMessage("Logging in ...");
                    pDialog.setIndeterminate(false);
                    pDialog.setCancelable(true);
                    pDialog.show();
                }

                @Override
                protected String doInBackground(String... args) {

                        try {
                        // defaultHttpClient
                        DefaultHttpClient httpClient = new DefaultHttpClient();
                        HttpGet httpGet = new HttpGet(url);
                        HttpResponse httpResponse = httpClient.execute(httpGet);
                        HttpEntity httpEntity = httpResponse.getEntity();
                        is = httpEntity.getContent();
                    } catch (UnsupportedEncodingException e) {
                        e.printStackTrace();
                    } catch (ClientProtocolException e) {
                        e.printStackTrace();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    try {
                        BufferedReader reader = new BufferedReader(new InputStreamReader(
                                is, "iso-8859-1"), 8);
                        StringBuilder sb = new StringBuilder();
                        String line = null;
                        while ((line = reader.readLine()) != null) {
                            sb.append(line + "\n");
                        }
                        is.close();
                        page_output = sb.toString();
                    } catch (Exception e) {
                        Log.e("Buffer Error", "Error converting result " + e.toString());
                    }
                   
                    return page_output;
                }

                @Override
                protected void onPostExecute(String page_output) {
                        pDialog.dismiss();
                    try {
                        // display output of internet page (page_output string)
                        TextView tv = (TextView) findViewById(R.id.textView1);
                        tv.setText(page_output);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
               }
            }

}

اگر در کدها دقت کنید، دو بار از AsyncTask استفاده کرده ایم. در واقع، دو کلاس (class) تعریف کرده ایم که هر کدام به صورت AsyncTask می باشند. AsyncTask به این صورت است که ابتدا یک ProgressDialog به شما نمایش داده می شود تا بدانید که یک سری فرآیند (کد) در حال اجرا شدن می باشد، سپس پس از پایان اجرای کدها، آن ProgressDialog ناپدید شده و نتیجه به شما نمایش داده می شود (یا هر مورد دیگر). استفاده از AsyncTask بسیار مهم می باشد زیرا همیشه باید کدهایی را که نمی دانیم اجرای آنها چه مدت طول می کشد را با AsyncTask اجرا کنیم.

کلاس اول دارای نام NetCheck می باشد و برای چک کردن اتصال به اینترنت به کار می رود. سپس اگر گوشی کاربر به اینترنت متصل باشد، کلاس دوم که دارای نام GetData است، فراخوانی می شود. اگر به کدهای روش onCreate دقت کنید، ابتدا با کد زیر، کلاس NetCheck را اجرا می کنیم :


new NetCheck().execute();

کلاس NetCheck ، وضعیت اتصال به اینترنت را چک می کند و اگر گوشی کاربر به اینترنت متصل باشد، آنگاه کلاس GetData را اجرا خواهد کرد که برای دریافت اطلاعات از آدرس اینترنتی می باشد.

به کدهای زیر دقت کنید :


try {
     // defaultHttpClient
     DefaultHttpClient httpClient = new DefaultHttpClient();
     HttpGet httpGet = new HttpGet(url);
     HttpResponse httpResponse = httpClient.execute(httpGet);
     HttpEntity httpEntity = httpResponse.getEntity();
     is = httpEntity.getContent();
 } catch (UnsupportedEncodingException e) {
     e.printStackTrace();
 } catch (ClientProtocolException e) {
     e.printStackTrace();
 } catch (IOException e) {
     e.printStackTrace();
 }
 try {
     BufferedReader reader = new BufferedReader(new InputStreamReader(
             is, "iso-8859-1"), 8);
     StringBuilder sb = new StringBuilder();
     String line = null;
     while ((line = reader.readLine()) != null) {
         sb.append(line + "\n");
     }
     is.close();
     page_output = sb.toString();
 } catch (Exception e) {
     Log.e("Buffer Error", "Error converting result " + e.toString());
 }

در کدهای فوق، متغیر url به صورت رشته (string) می باشد که آدرس URL صفحه اینترنتی در آن ذخیره شده است. با استفاده از httpGet ، اطلاعات را از صفحه اینترنتی دریافت کرده ایم و سپس خروجی صفحه در یک رشته با نام page_output ذخیره می شود (که بعدا آن را در TextView نمایش خواهیم داد).

اگر برنامه را بر روی یک گوشی واقعی نصب کنیم، نتیجه به صورت زیر خواهد بود (البته قبل از نمایش نتیجه، دو بار، ProgressDialog نمایش داده می شود) :

استفاده از HttpGet برای دریافت اطلاعات از یک صفحه اینترنتی (آدرس URL)، با روش GET و به صورت AsyncTask ، در برنامه نویسی اندروید

فایل های پروژه اندروید را می توانید از لینک های زیر دریافت کنید :

نکته

اگر برخی از کلاس های (class) به کار رفته در این آموزش، در api های جدید حذف شده بودند، می توانید کلاس های (Class) حذف شده را با روش هایی به پروژه اندروید اضافه کنید تا در api های جدید نیز قابل استفاده باشند.

به عنوان مثال، برای Android Studio ، کلید زیر را بخوانید :

کلید شماره 6981

نویسنده علیرضا گلمکانی
شماره کلید 312
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 6 6 0
saeed.g
۱۳۹۵/۰۶/۰۴
۱۵:۵۴

سلام چطور میتونم توسط جیسان متن یک تگ در سورس یک سایت رو دریافت کنم؟؟؟؟

marjan
۱۳۹۵/۰۹/۰۸
۱۴:۴۷

سلام خسته نباشید
میخواستم بدونم اگر بخام بجای اون تیکه php که نوشته بودید دستورات مدنظر خودمو طبق جدولی که با localhost برنامه wamp درست کردم , داخل برنامه ای مثل IntelliJ IDEA بنویسم
و بعد, از فایل php که با برنامه IntelliJ IDEA درست کردم استفاده کنم باید توی url  چی بنویسم یا کلا کجاهای برنامه رو تغییر بدم
مچکرم

Hassan
۱۳۹۵/۱۱/۱۶
۱۱:۳۵

سلام دوست عزیز باید ای پی کامپیوترت رو بدست بیاری و بعدش به جای url  اینطوری بنویسی :
http://192.168.1.103/hasan.php?city=081
موفق باشید

asd
۱۳۹۵/۱۱/۲۱
۰۲:۳۴

سلام چطور میتونم توسط جیسان متن یک تگ در سورس یک سایت رو دریافت کنم؟؟؟؟

Meisam
۱۳۹۷/۰۱/۱۱
۲۱:۲۴

از داخل اندروید استودیو میخوام برنامم رو تست بکنم. برنامه سبکیه و فقط یه فایل xml رو استخراج و تبدیل میکنه. ولی از اونجایی که گوگل تحریممون داره و نمیشه به بیرون ازتباط برقرار کرد لینک ها رو نمیتونه باز بکنه و nullPointException می ده. برا همین میخواستم از پروکسی استفاده کنم و از طریق کانشن Https. لطفا طریقه کار با Https رو هم تو یه آموزش بگین. مرسی

علیرضا.مقدم.موحد
۱۴۰۲/۱۲/۰۹
۰۰:۵۳

درود
کد php را در غیر از notepad ویندوز وارد کنید، زیرا کدهای سر خط رفتن و دیگر کدهای غیر مرتبط را میسازد، ولی در لینوکس تولید کاراکتر کدها جور دیگر است. در ویندوز notepad++ برنامه خوبی است.
یا بهتره از برنامه های مخصوص ویرایش php یا ویرایشگرهای چند منظوره برنامه نویسی بهره بگیرید.
در اندروید App ای به نام QuickEdit را پیشنهاد میکنم.

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)

جستجو در کلیدستان، توسط گوگل

جستجو در عنوان کلیدها

دسترسی سریع

کلید
×

شماره کلید


دسته بندی
×

شماره دسته کلید


جستجو
×

جستجو


کلمات کلیدی

راهنمای کلمات کلیدی (کلاس ها، توابع، عناصر و ...) در برنامه نویسی اندروید، بر اساس حرف اول کلمه کلیدی :

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

developer.android.com