PDA

View Full Version : عدم عملکرد boot completd



majid.ostadi
دوشنبه 03 آذر 1393, 09:18 صبح
با سلام خدمت دوستان
من یه برنامه نوشتم که یه آلارم داخلشه و کدهاش شرح زیر است :
کد کلاس AlarmReceiverActivity

public class AlarmReceiverActivity extends Activity
{

private Toast mToast;
private MediaPlayer mMediaPlayer;
private PowerManager.WakeLock mWakeLoack;

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
mWakeLoack = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Wake Log");
mWakeLoack.acquire();
this.requestWindowFeature(Window.FEATURE_NO_TITLE) ;
this.getWindow().setFlags(WindowManager.LayoutPara ms.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
setContentView(R.layout.alarm);

Button stopAlarm = (Button) findViewById(R.id.btnStopAlarm);
stopAlarm.setOnClickListener(new OnClickListener() {
public void onClick(View arg0)
{
mMediaPlayer.stop();
finish();
}
});
playSound(this, getAlarmUri());
}//on create

private void playSound(Context context, Uri alert)
{
mMediaPlayer = new MediaPlayer();
try
{
mMediaPlayer.setDataSource(context, alert);
final AudioManager audioManager =
(AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
if (audioManager.getStreamVolume(AudioManager.STREAM_ ALARM) != 0)
{
mMediaPlayer.setAudioStreamType(AudioManager.STREA M_ALARM);
mMediaPlayer.prepare();
mMediaPlayer.start();
}
} catch (IOException e)
{
}
}//playsound

private Uri getAlarmUri()
{
Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE _ALARM);
if (alert == null)
{
alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE _NOTIFICATION);
if (alert == null)
{
alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE _RINGTONE);
}
}
return alert;
}//uri getalramuri

protected void onStop()
{
super.onStop();
if (mWakeLoack.isHeld())
mWakeLoack.release();
}//onStop

}

}


کد کلاس RepeatingAlarmReceiverActivity


public class RepeatingAlarmReceiverActivity extends Activity
{

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.alarm);

Button stopAlarm = (Button) findViewById(R.id.btnStopAlarm);
stopAlarm.setOnClickListener(new OnClickListener()
{

public void onClick(View arg0)
{
finish();

}
});


}//onCreate
}

اینم کد کلاس boot completed :


public class BootUpReceiver extends BroadcastReceiver
{

@Override
public void onReceive(Context context, Intent intent)
{
// TODO Auto-generated method stub

Intent i = new Intent(context, RepeatingAlarmReceiverActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}

}

این هم کدی که تو main activity نوشتم :


try
{

Intent intent = new Intent(Home.this, AlarmReceiverActivity.class);
PendingIntent pendingIntent =
PendingIntent.getActivity(Home.this, 2, intent,
PendingIntent.FLAG_CANCEL_CURRENT);

AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis() + day,
Repeat , pendingIntent);


} catch (NumberFormatException e)
{
if (mToast != null)
{
mToast.cancel();
}
mToast = Toast.makeText(Home.this,
"NOT DATE",
Toast.LENGTH_LONG);
mToast.show();
}
}

حالا مشکلم اینه که بعد از ریست شدن دستگاه آلارم تکرار نمیشه
همه دسترسی ها رو هم اضافه کردم


<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

<receiver android:enabled="true" android:name=".BootUpReceiver"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">

<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>

کسی میدونه مشکل از چیه؟؟؟؟؟؟؟

majid.ostadi
دوشنبه 03 آذر 1393, 17:29 عصر
UPPPPPPPP
uppppppppppp
uppppppppp

majid.ostadi
پنج شنبه 06 آذر 1393, 18:09 عصر
از دوستان کسی نیست کمکی کنه؟؟؟؟؟؟؟؟؟؟

saeed_g21
پنج شنبه 06 آذر 1393, 20:34 عصر
من یک نمونه در برنامه های کوچک قرار داده بودم دانلود کن تست بزن