ساختن برنامه اندرویدی در گوشی

saalek110

Well-Known Member

سالک: با برنامه codeassist میشه برنامه اندرویدی ساخت.
در بالا لینک آن را در apkpure گذاشتم. ۷۰ مگا.
در گوگل استور هم هست ، خودتان در گوگل استور سرچ کنید.


بعدا نرم افزار زیر را پیدا کردم ، ولی زیاد کار نکردم...نمی دونم کار می کنه یا نه:
فعلا توضیحاتی برای نرم افزار زیر نیست. فقط لینکش را گذاشتم.

 
آخرین ویرایش:

saalek110

Well-Known Member
در فیلم زیر طرز ساختن پروژه را نشان داده
و یک مقدار کدنویسی هم کرده.

youtu.be/0FC2ZFrfPwY?si=0nMgyvRDEO17DQzt
کیفیت فیلم: فیلم بالا ، ریز است ، و صحبت ندارد و موسیقی دارد.

فیلم دیگر اگر پیدا کردم ارسال می کنم.

سالک: من خودم کد نوشتم و برنامه اندرویدی ساخته و درست اجرا شد.
 

saalek110

Well-Known Member
فیلم زیر زبان آسیایی نامفهوم دارد ولی از فیلم پست قبلی درشت تر و قابل دیدن تر است.

youtu.be/gmko8s6UFjw?si=Yc9bk2oIeIJADkbi
 

saalek110

Well-Known Member

در آموزش بالا ، طرز کار کردن با فایلهای پروژه گفته شده.

سالک: آموزش بالا را اجرا کردم ، و درست است.
یک جایی اومده یک کلاس اضافه کرده به پروژه.
برای این کار در منوی سمت راست برنامه ، روی پوشه نام برنامه تاچ ممتد(لمس طولانی) کنید و new را بزنید و java class را انتخاب کنید. و اسم کلاس را DisplayMessageActivity بگذارید. این تکه یک مقدار شاید سخت بود.
باقیش تغییر در ۴ فایل موجود است.
۴ فایل عبارت است از :
mainactivity.java
strings.xml
activity_mail.xml
androidManifest.xml
این ۴ فایل وقتی پروژه می سازید موجود است ولی یک کلاس هم به نام DisplayMessageActivity دوستمان اضافه کرده به پروژه.
 
آخرین ویرایش:

saalek110

Well-Known Member
مکان ۴ فایل بالا را در عکس زیر من نشان داده ام:

Screenshot_۲۰۲۳-۰۹-۱۲_۱۴۲۸۰۳.jpg

اینکه چه کدهایی به این ۴ فایل اضافه کرده ، به سایت لینک داده شده نگاه کنید.
 

saalek110

Well-Known Member
در عکس زیر روی پوشه myapplication ، تاچ ممتد می کنیم و در پنجره باز شده new را می زنیم.

Screenshot_۲۰۲۳-۰۹-۱۲_۱۴۳۳۳۱.jpg

البته هر اسمی موقع ایجاد پروژه به اپلیکیشن خود دادید ، اینجا همون اسم است.
موقع ایجاد پروژه این طوری نوشتیم com.my.yekesm
اون اسمی که اونجا دادید میشه این پوشه ای که کلاس mainactivity.java داخلش است و شما می خواهید یک کلاس کنارش اضافه کنید.
 

saalek110

Well-Known Member
با دو پست بالا ، من به شما کمک کردم ۴ فایل را راحت تر پیدا کنید و بدانید چطور یک کلاس به پروژه اضافه کنید.

برنامه که اجرا شد در تکست یک چیزی می نویسید و دکمه برنامه را می زنید. یک پنجره جدید باز میشه و اون کلمه ای که نوشتید نشان داده میشه.

Screenshot_۲۰۲۳-۰۹-۱۲_۱۴۴۱۵۱.jpg

Screenshot_۲۰۲۳-۰۹-۱۲_۱۴۴۲۱۴.jpg

به اون اسم b1 توجه نکنید. من وقتی خواستم از پوشه های برنامه عکس بگیرم برای دو پست قبل ، یک پروژه جدید ساختم. پروژه قبلی اسم b1 داشت. فقط نگاه کنید به اجزای برنامه
یک hello world هم سمت راست می بینید که مال پروژه پایه ای است که اولش ساخته میشه ، و من پاکش نکردم و دو ابزار تکست و باتون را زیرش اضافه کردم. من یک hello در تکست نوشتم و باتون را زدم و یک صفحه جدید باز شد که در اون نوشته شده بود hello
 
آخرین ویرایش:

saalek110

Well-Known Member
موقع تکمیل فایلها ، دو قسمت را باید دقت کننید ، یکی import ها و دیگری کدها.
مقداری حوصله می خواد که کدهای سایت را با پروژه خودتان مقایسه کنید و پروژه خودتان را تکمیل کنید.

پس یادتان نرود import ها را دونه دونه چک کنید و هر کدام را صفحه شما نداشت ، به صفحه خود اضافه کنید.
 

saalek110

Well-Known Member
چون ممکن است سایت منبع بپرد ، کدها را اینجا می زنم. شما می توانید با کدهای اینجا هم مقایسه کنید....

activity_main.xml



Java:
<LinearLayout 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:orientation="horizontal"
    tools:context=".MainActivity" >
    <EditText
        android:id="@+id/edit_message"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:text="@string/edit_message" />
    <Button
        android:id="@+id/send_message"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button_send" />
</LinearLayout>
 

saalek110

Well-Known Member
strings.xml

Java:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">My First App</string>
    <string name="hello_world">Hello world!</string>
    <string name="edit_message">Enter a message</string>
    <string name="button_send">SEND</string>
</resources>
 

saalek110

Well-Known Member
این همون فایل پنجم افزوده شده است. توجه کنید در پوشه myapplication حالا دو فایل با پسوند java خواهیم داشت. کلاس ها با پسوند java ذخیره می شوند.


DisplayMessageActivity.java


Java:
package com.example.myfirstapp;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.widget.TextView;


public class DisplayMessageActivity extends Activity {
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  // Get the message from the intent
  Intent intent = getIntent();
  String message = intent.getStringExtra("com.example.myfirstapp.EXTRA_MESSAGE");
  // Create the text view
  TextView textView = new TextView(this);
  textView.setTextSize(40);
  textView.setText(message);
  // Set the text view as the activity layout
  setContentView(textView);
 }
}
 
آخرین ویرایش:

saalek110

Well-Known Member
AndroidManifest.xml

Java:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.myfirstapp"
    android:versionCode="1"
 android:versionName="1.0">
    
    <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="31"/>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApplication">
        <activity
            android:name=".MainActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

        </activity>
 
    </application>

</manifest>
 

saalek110

Well-Known Member
MainActivity.java


Java:
package com.example.myfirstapp;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.Button;

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        addListener();
    }

 public void sendMessage() {
  Log.v("Click","Send Button is clicked");
  Intent intent = new Intent(this, DisplayMessageActivity.class);
  EditText editText = (EditText) findViewById(R.id.edit_message);
  String message = editText.getText().toString();
  intent.putExtra("com.example.myfirstapp.EXTRA_MESSAGE", message);
  startActivity(intent);
 }
 
 public void addListener(){
  /** Listen to button click event */
  Button button = (Button) findViewById(R.id.send_message); 
  button.setOnClickListener(new OnClickListener() {
   public void onClick(View v) {
    sendMessage();
   }
  });
 }

}
 

saalek110

Well-Known Member
فکر کنم ، حالا که در ۵ پست ، کدهای ۵ فایل را زدم ، خواناتر شد.
حالا نمی دونم چیزی در سایت منبع مونده باشه که کپی نکرده باشیم یا نه. خودتان چک کنید. کدها را که درست آوردم، منظورم توضیحات نویسنده است. شاید یک توضیحی در مورد چیزی داده باشه که من اینجا نگفتم.
 

saalek110

Well-Known Member
با انجام پروژه بالا ، مفاهیمی را هم متوجه می شویم. از اسمها مشخص است ، مثلا در کلاس اصلی کد:
Java:
addListener();

را اضافه کردیم. داخل رویداد خلق یعنی on_create ، تابع addlistener را معرفی کرده ،
و بعد از تابع خلق و داخل کلاس mainactivity(یعنی قبل کروشه آخری) دو تابع addlistener و sendmessage را افزوده.

دقت کنید تابع sendmessage از داخل تابع addlistener صدا زده میشه و اکثر کارها داخل تابع sendmessage انجام شده.
سالک: البته نوشته های این پست برداشت من بود نه ترجمه سایت.فقط خواستارم به ساختار توجه کنید.
 

saalek110

Well-Known Member
اون intent چیه؟

WHAT IS AN INTENT?
An intent is a messaging object used to request any action from another app component. Intents facilitate communication between different components in several ways. The intent is used to launch an activity, start the services, broadcast receivers, display a web page, dial a phone call, send messages from one activity to another activity, and so on.

گویا برای ارتباط است.
سالک: نمی خوام اینجا شلوغ بشه و زیاد بحث intent را باز نمی کنم، ولی چون جزویی از برنامه بود خواستم یک اشاره ای بهش بشه.




Screenshot_۲۰۲۳-۰۹-۱۲_۱۵۴۰۳۰.jpg
 
آخرین ویرایش:

saalek110

Well-Known Member
راستی مکان پروژه توی پوشه اندروید ، بعد پوشه data بعد با توجه به عکس نرم افزار codeassist پوشه اش را پیدا کنید و بعد بروید به پوشه files و بعد به پوشه پروژه ها. و بعد پروژه خود را پیدا کنید.


در عکس زیر ، اسم پروژه من b1 بوده و بعدش داده بودم com.my.my
در عکس زیر می بینید که دو فایل با پسوند java داخل پوشه my است. یکی از اول بوده ، و کلاس دوم ، در حین ساخت به پروژه افزوده شده.

Screenshot_۲۰۲۳-۰۹-۱۲_۱۵۳۲۳۰.jpg


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

خسته نباشید.موفق باشید.

flowers.jpg
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا