Ваша программа может вести себя как вы хотите! **
** Просто помните, что вам нужно подумать о последствиях его действий.
public class MyApplication extends Application {
/**
* show example alertdialog on context -method could be moved to other class
* (eg. MyClass) or marked as static & used by MyClas.showAlertDialog(Context)
* context is obtained via getApplicationContext()
*/
public void showAlertDialog(Context context) {
/** define onClickListener for dialog */
DialogInterface.OnClickListener listener
= new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// do some stuff eg: context.onCreate(super)
}
};
/** create builder for dialog */
AlertDialog.Builder builder = new AlertDialog.Builder(context)
.setCancelable(false)
.setMessage("Messag...")
.setTitle("Title")
.setPositiveButton("OK", listener);
/** create dialog & set builder on it */
Dialog dialog = builder.create();
/** this required special permission but u can use aplication context */
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
/** show dialog */
dialog.show();
}
@Override
public void onCreate() {
showAlertDialog(getApplicationContext());
}
}
импорт для abowe:
import android.app.AlertDialog;
import android.app.Application;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.view.WindowManager;
edity:
Вы не можете ** отобразить окно / диалог приложения через Контекст, который не является Деятельностью или Службой. Попробуйте передать действительную ссылку на активность
** вы можете использовать контекст приложения для создания диалога, добавив перед вызовом Dialog.show ();
Dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
- but this requires permission:
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
Ссылка: