質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

解決済

Androidのアラームアプリが上手く動かない

sun-solar-arrow
sun-solar-arrow

総合スコア113

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

1回答

0評価

0クリップ

2662閲覧

投稿2016/04/10 13:17

Androidのアラームアプリが上手く動きません。
仕様は、
・TimePickerで時間をセット(12時間表示)
・EditTextでやることを書く
・セットというボタンを押すと時間になると通知される
です。
しかし、
セットというボタンを押すとすぐ通知されてしまいます。
ログはまた見れてません。
また、しばらく返信はすぐに出来ないと思います。

Java

import android.content.*; import android.app.*; public class Alarm extends BroadcastReceiver { @Override public void onReceive(Context context, Intent receive){ int Notificationid=receive.getIntExtra("notification",0); NotificationManager notification=(NotificationManager) context.getSystemService(Context.LOCATION_SERVICE); Intent boot=new Intent(context,MainActivity.class); PendingIntent contentintent=PendingIntent.getActivity(context,0,boot,0); Notification.Builder builder=new Notification.Builder(context); builder.setSmallIcon(android.R.drawable.ic_dialog_alert) .setContentTitle("時間になりました") .setContentText(receive.getCharSequenceExtra("TODO")) .setWhen(System.currentTimeMillis()) .setPriority(Notification.PRIORITY_DEFAULT) .setAutoCancel(true) .setDefaults(Notification.DEFAULT_SOUND) .setContentIntent(contentintent); notification.notify(Notificationid,builder.build()); } }

java

import android.app.*; import android.os.*; import android.widget.*; import android.view.View.*; import android.view.*; import android.view.inputmethod.*; import android.content.*; import java.util.*; public class MainActivity extends Activity implements OnClickListener{ private RelativeLayout layout; private InputMethodManager im; private int notificationId=0; @Override public void onClick(View view){ EditText edit=(EditText) findViewById(R.id.editText); Intent bootintent=new Intent(this,Alarm.class); bootintent.putExtra("notification",notificationId); bootintent.putExtra("TODO",edit.getText()); PendingIntent alarmintent=PendingIntent.getBroadcast(MainActivity.this,0,bootintent,PendingIntent.FLAG_CANCEL_CURRENT); AlarmManager alarm=(AlarmManager) getSystemService(Context.ALARM_SERVICE); TimePicker timepicker=(TimePicker) findViewById(R.id.timePicker); switch(view.getId()){ case R.id.set: int hour=timepicker.getCurrentHour(); int minute=timepicker.getCurrentMinute(); Calendar start=Calendar.getInstance(); start.set(Calendar.HOUR_OF_DAY,hour); start.set(Calendar.MINUTE,minute); start.set(Calendar.SECOND,0); long alarmstart=start.getTimeInMillis(); alarm.set(AlarmManager.RTC_WAKEUP,alarmstart,alarmintent); Toast.makeText(MainActivity.this,"通知をセットしました",Toast.LENGTH_SHORT).show(); notificationId++; break; case R.id.cancel: alarm.cancel(alarmintent); Toast.makeText(MainActivity.this,"通知をキャンセルしました",Toast.LENGTH_SHORT).show(); break; } } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); layout=(RelativeLayout) findViewById(R.id.mainLayout); im=(InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); Button Click=(Button) findViewById(R.id.set); Click.setOnClickListener(this); Button cancel=(Button) findViewById(R.id.cancel); cancel.setOnClickListener(this); } @Override public boolean onTouchEvent(MotionEvent event) { im.hideSoftInputFromWindow(layout.getWindowToken(),InputMethodManager.HIDE_NOT_ALWAYS); layout.requestFocus(); return false; } }

どうか宜しくお願いします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。