نگاهی به عکس زیر بیندازید :
شما برای دریافت SMS هیچ ارجاعی به توابع یا کلاس های مورد نیاز نداده اید. فقط رشته SMSBody1 را در TextView نمایش داده اید. خوب رشته SMSBody1 مقدار خود را باید از کجا بگیرد ؟ در واقع باید همان نیمه دوم SMS هم نمایش داده نشود ! (نتایجی که نمایش داده اید با این کدهایی که نوشته اید، متناسب نیست)
مثلا تابعی با نام getSmsDetails تعریف کرده اید که هیچ استفاده ای از آن نشده است.
بد نیست برایتان مثالی در مورد توابع بزنم :
کد:
package com.kelidestan.com;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Toast;
public class MainActivity extends Activity {
static String MyString = "1";
public static void MyFunction() {
MyString = "2";
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// show MyString with Toast
Toast.makeText(getApplicationContext(), MyString, Toast.LENGTH_SHORT).show();
}
}
کد بالا را با دقت بخوانید، به نظر شما باید پیامی که به کاربر نمایش داده می شود، برابر 1 یا باشد یا برابر 2 ؟
مقدار 1 به کاربر نمایش داده می شود زیرا تابع MyFunction اصلا اجرا نمی شود.
در ضمن، بهتر بود کدهایتان را به صورت کد، اینجا کپی می کردید، نه به صورت عکس، ولی به هر حال، این موارد را در نظر داشته باشید.