0
私は、oneignalから通知をタップするときに特定のアクティビティを開く方法が必要です。 以下、私がこれまでに試したコードを挙げました。 問題は、アプリを実行しているときにのみ機能します。私は、アプリケーションを実行していないときにそのクラスを開く必要があります。アプリが実行されていないときに特定のアクティビティを開く
マニフェストファイル内private class ExampleNotificationOpenedHandler implements OneSignal.NotificationOpenedHandler {
@Override
public void notificationOpened(String message, JSONObject additionalData, boolean isActive) {
try {
Toast.makeText(getContext(), message, Toast.LENGTH_SHORT).show();
} catch (Throwable t)
{
t.printStackTrace();
}
Intent intent = new Intent(getApplication(), MyActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
}
private void registerWithOneSignal(String tag) {
OneSignal.startInit(getContext())
.setAutoPromptLocation(true)
.setNotificationOpenedHandler(new ExampleNotificationOpenedHandler())
.init();
OneSignal.sendTag("TAG", tag);
OneSignal.idsAvailable(ApplicationSettings.getInstance());
OneSignal.enableVibrate(true);
OneSignal.enableSound(true);
OneSignal.setSubscription(true);
OneSignal.enableNotificationsWhenActive(true);
OneSignal.enableInAppAlertNotification(true);
}
も
<meta-data android:name="com.onesignal.NotificationOpened.DEFAULT" android:value="DISABLE" />
uは、通知をクリックしてアクティビティを開くために意味しますか? – Stallion
はい............ – Hansi