View Full Version : راهنمایی فوری
stranger!!!!
چهارشنبه 23 اردیبهشت 1394, 23:31 عصر
سلام دوستان من میخوام از یک فایل جاوا از یک کلاس در یک فایل جاوا کلاس دیگه استفاده کنم میشه راهنمایی کنید
مثلا
com.test.1 ------->test.java
com.test.2------>test2.java
حالا میخوام وقتی test1.java اجرا شد test2.java هم اجرا بشه نمیدونم اصلا این کار شدنی هست چطور
میخواستم کداها رو با هم بنویسم ارور میده جدا گذاشتم ایا میشه؟
stranger!!!!
چهارشنبه 23 اردیبهشت 1394, 23:43 عصر
یادم رفت بگم تو test.java از
extends Fragment { و تو test2.java از
extends BroadcastReceiver{ استفاده کردم ارور هم از همین موضوع میگیره
stranger!!!!
پنج شنبه 24 اردیبهشت 1394, 00:06 صبح
اساتید گرام کسی نمیتونه کمک من تازه کار بکنه؟
stranger!!!!
پنج شنبه 24 اردیبهشت 1394, 00:43 صبح
منتظزم دوستان
اصلا بگید این کار شدنیه یا نیس من زیاد بلد نیسم
atpf67
پنج شنبه 24 اردیبهشت 1394, 00:45 صبح
اساتید گرام کسی نمیتونه کمک من تازه کار بکنه؟
سلام بزرگوار
BroadcastReceiver به اون صورتی که شما مد نظرتون هست اجرا نمیشه.
توی اندروید یک سری کارها که انجام میشه یه پیغام به صورت عمومی صادر میشه و برنامه هایی که حاوی یک کلاس از جنس BroadcastReceiver باشن اون پیام رو دریافت می کنن، یعنی مثلاً موقع دریافت SMS سیستم عامل یه Broadcast رو send میکنه که اگه برنامه شما حاوی BroadcastReceiver باشه اون پیام رو دریافت می کنه و اون کلاس در واقع فراخوانی میشه، البته شما باید این کلاس رو توی فایل manifest معرفی کنید، به صورت زیر:
<receiver android:name=".test2" android:label="test2">
پیروز و موفق باشید.
stranger!!!!
پنج شنبه 24 اردیبهشت 1394, 01:10 صبح
سلام بزرگوار
BroadcastReceiver به اون صورتی که شما مد نظرتون هست اجرا نمیشه.
توی اندروید یک سری کارها که انجام میشه یه پیغام به صورت عمومی صادر میشه و برنامه هایی که حاوی یک کلاس از جنس BroadcastReceiver باشن اون پیام رو دریافت می کنن، یعنی مثلاً موقع دریافت SMS سیستم عامل یه Broadcast رو send میکنه که اگه برنامه شما حاوی BroadcastReceiver باشه اون پیام رو دریافت می کنه و اون کلاس در واقع فراخوانی میشه، البته شما باید این کلاس رو توی فایل manifest معرفی کنید، به صورت زیر:
<receiver android:name=".test2" android:label="test2">
پیروز و موفق باشید.
ممنون از پاسخت اما ارور attr میده چطور رفع کنم
ی مساله دیگه هم هست من دو فایل boradcast دارم که باید با ذو فایل Fragment ادغام بشه
atpf67
پنج شنبه 24 اردیبهشت 1394, 01:17 صبح
ممنون از پاسخت اما ارور attr میده چطور رفع کنم
ی مساله دیگه هم هست من دو فایل boradcast دارم که باید با ذو فایل Fragment ادغام بشه
فایل manifest و متن ارور رو بذارید تا بررسی کنیم.
شما هر چندتا BroadcastReceiver داشته باشید باید همون خط که گفتم رو برا همه ش تو manifest بنویسید.
stranger!!!!
پنج شنبه 24 اردیبهشت 1394, 08:26 صبح
این manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.aaa"
android:versionCode="1"
android:versionName="1.0" >
<uses-permission
android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
<uses-permission
android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.test.aaa.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>
ارور هم نداره البته بگم که دو کلاس متفاوت دارم و کدها با هم داخل نیست
atpf67
پنج شنبه 24 اردیبهشت 1394, 19:38 عصر
این manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.aaa"
android:versionCode="1"
android:versionName="1.0" >
<uses-permission
android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
<uses-permission
android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.test.aaa.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>
ارور هم نداره البته بگم که دو کلاس متفاوت دارم و کدها با هم داخل نیست
دوست عزیز الان من توی فایل manifest شما هیچ Rieciver ی نمیبینم کجا معرفی کردین Broadcast تون رو؟
مگه نفرمودید که ارور attr دارید پس چطور می فرمایید ارور ندارید؟
stranger!!!!
پنج شنبه 24 اردیبهشت 1394, 19:45 عصر
دوست عزیز الان من توی فایل manifest شما هیچ Rieciver ی نمیبینم کجا معرفی کردین Broadcast تون رو؟
مگه نفرمودید که ارور attr دارید پس چطور می فرمایید ارور ندارید؟
اون یک تاپیک دیگه بوده که ارور attr داره این ی تاپیک دیگس در ضمن Rieciver هم هنوز تعریف نکردم چون اول ابن مساله برام ایجاد شد چطور کد ها رو ادغام کنم و همزمان استفاده کنم یعد تکمیل نهایی پروژه
atpf67
جمعه 25 اردیبهشت 1394, 07:40 صبح
اون یک تاپیک دیگه بوده که ارور attr داره این ی تاپیک دیگس
تا اونجایی که من میبینم تو پست شماره ی 6 همین تاپیک مطرح کردین که ارور attr میده، حالا اگه مربوط به تاپیک دیگه است نمی دونم والّا...:متفکر: بگذریم حالا مهم نیست...:چشمک:
در ضمن Rieciver هم هنوز تعریف نکردم چون اول ابن مساله برام ایجاد شد چطور کد ها رو ادغام کنم و همزمان استفاده کنم یعد تکمیل نهایی پروژه
هر چند منظورتون از ادغام Broadcast با fragment رو درست متوجه نشدم، اما اگر منظورتون برقراری ارتباط بین این کلاس هاست دیگه بستگی به نیاز و سلیقه شما و البته مهارتتون در تحلیل پروژه و بکار گیری متدهای برنامه نویسی داره.
stranger!!!!
جمعه 25 اردیبهشت 1394, 12:33 عصر
تا اونجایی که من میبینم تو پست شماره ی 6 همین تاپیک مطرح کردین که ارور attr میده، حالا اگه مربوط به تاپیک دیگه است نمی دونم والّا...:متفکر: بگذریم حالا مهم نیست...:چشمک:
معذرت میخوام اشتباه از من بوده
هر چند منظورتون از ادغام Broadcast با fragment رو درست متوجه نشدم، اما اگر منظورتون برقراری ارتباط بین این کلاس هاست دیگه بستگی به نیاز و سلیقه شما و البته مهارتتون در تحلیل پروژه و بکار گیری متدهای برنامه نویسی داره.
خب من هم مشکلم همینه که چطور ارتباط برقرار کنم مهارتم کمه در اینن زمینه
این کد فرنگمنت
package info.test.aaaaa;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class TestFragment extends Fragment {
public TestFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_Test, container, false);
return rootView;
}
}
اینم کد برادکست
package com.test.sssss;
import android.app.ActivityManager;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Process;
import android.os.SystemClock;
import android.util.Log;
public class StartService extends BroadcastReceiver {
public void onReceive(Context paramContext, Intent paramIntent)
{
paramContext.startService(new Intent(paramContext, WakeLockService.class));
if (paramContext.getSharedPreferences("config", 0).getBoolean("enabled", false))
{
ActivityManager localActivityManager = (ActivityManager)paramContext.getSystemService("activity");
Process.killProcess(Process.getUidForName("com.fffff"));
localActivityManager.killBackgroundProcesses("com.ffffff");
Log.d("AlarmReceiver", "Called context.startService from AlarmReceiver.onReceive");
}
AlarmManager localAlarmManager = (AlarmManager)paramContext.getSystemService("alarm");
PendingIntent localPendingIntent = PendingIntent.getBroadcast(paramContext, 0, new Intent(paramContext, StartService.class), 0);
localAlarmManager.setRepeating(2, SystemClock.elapsedRealtime(), 10L, localPendingIntent);
}
}
stranger!!!!
جمعه 25 اردیبهشت 1394, 14:32 عصر
معذرت میخوام اشتباه از من بوده
خب من هم مشکلم همینه که چطور ارتباط برقرار کنم مهارتم کمه در اینن زمینه
این کد فرنگمنت
package info.test.aaaaa;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class TestFragment extends Fragment {
public TestFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_Test, container, false);
return rootView;
}
}
اینم کد برادکست
package com.test.sssss;
import android.app.ActivityManager;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Process;
import android.os.SystemClock;
import android.util.Log;
public class StartService extends BroadcastReceiver {
public void onReceive(Context paramContext, Intent paramIntent)
{
paramContext.startService(new Intent(paramContext, WakeLockService.class));
if (paramContext.getSharedPreferences("config", 0).getBoolean("enabled", false))
{
ActivityManager localActivityManager = (ActivityManager)paramContext.getSystemService("activity");
Process.killProcess(Process.getUidForName("com.fffff"));
localActivityManager.killBackgroundProcesses("com.ffffff");
Log.d("AlarmReceiver", "Called context.startService from AlarmReceiver.onReceive");
}
AlarmManager localAlarmManager = (AlarmManager)paramContext.getSystemService("alarm");
PendingIntent localPendingIntent = PendingIntent.getBroadcast(paramContext, 0, new Intent(paramContext, StartService.class), 0);
localAlarmManager.setRepeating(2, SystemClock.elapsedRealtime(), 10L, localPendingIntent);
}
}
کسی جواب گو نیس؟
atpf67
جمعه 25 اردیبهشت 1394, 17:54 عصر
دوست عزیز روش استاندارد ارسال داده به fragment و دریافت در اون سمت استفاده از دستورات put و get هست:
مثال:
سمت کلاس ارسال کننده:
Bundle bundle =newBundle();
bundle.putString("edttext","From Activity");
// set Fragmentclass Arguments
Fragmentclass fragobj =newFragmentclass();
fragobj.setArguments(bundle);
سمت فرگمنت:
@Override
publicView onCreateView(LayoutInflater inflater,ViewGroup container,
Bundle savedInstanceState){
String strtext = getArguments().getString("edttext");
return inflater.inflate(R.layout.fragment, container,false);
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.