問題タブ [devicetoken]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - iPhone/iPad を一意に識別するにはどうすればよいですか?
ユーザー データを保存するために、iPhone/iPad モバイル デバイスを一意に識別しようとしています。
私はいくつかを見つけました。
またはデバイストークンを取得します
しかし、問題は
- アプリを閉じて再起動するたびにUUIDが変更されます(デバッグから経験しました)
- アプリを削除して再インストールする (またはアプリを更新する) たびに、identiferForVendor が変更されます。
- デバイストークンを使用して、バージョンの更新、再インストールでデバイスを一意に識別しましたが、変更できることを知り、xCode での更新とデバッグからそれを経験しています。
app store は uniqueIdentifer を使用して拒否するので、私の質問は次のとおりです。アプリケーションの更新、削除、再インストールでデバイスを一意に識別する方法はありますか?
ios - アプリ ストアでアプリの更新がある場合、アプリのデバイス トークンは変更されますか?
私はそれをグーグルで検索しましたが、その答えが見つからないようです:アプリのアプリストアからの更新があると、デバイストークンは変更されますか?
ios - 任意のビューから deviceToken を取得
私のアプリでは、次のフローがあります。起動すると、プッシュ通知の受信について尋ねられます。[はい] をクリックすると、deviceToken が取得され、NSUserDefault として保存されます。アプリの一部がリクエストを行っています。これらのリクエストは、deviceToken のセクションを含む XML ファイルに追加されます。これにより、PHP スクリプトは、XML にある deviceToken に基づいて、リクエストの通知を後で送信できます。
私は最近実装しました:
ユーザーが不要になった他の多くの NSUserDefaults をクリアできるようにします。問題は、これにより deviceToken もクリアされることです。App Delegate にある didRegister コードを使用せずに、deviceToken を再度取得するにはどうすればよいですか?
android - devicetoken が他のデバイス用に生成されないのはなぜですか?
1 つのデバイスのデバイス トークンを生成しようとしていますが、他のデバイスに対して生成されないのはなぜですか。その値を解析して保存しています。2 番目のデバイス トークンがありません。
他のデバイスのデバイス トークンを生成するためのソリューションは何ですか?
ios - APNS プッシュ通知 - デバイス トークンとキーチェーン
私の知る限りでは、 APNS からデバイス トークンを取得すると、それを再び取得することはできません。(ただし、データを新しいデバイスまたはコンピューターにバックアップする場合、オペレーティング システムを再インストールする場合、または を呼び出すデバイス トークンが変更された場合は除くdidRegisterForRemoteNotificationsWithDeviceToken
)
そう、
デバイストークンが変更されるたびに、新しいデバイストークンをキーチェーンに置き換えて保存し、他の目的で失われるのを防ぎます (デバイストークンを UUID に使用するなど)。
キーチェーンのデータが消えたのにデバイストークンが変わらないということはありえますか?
(はいの場合。
didRegisterForRemoteNotificationsWithDeviceToken
再度呼び出されず、最後のデバイス トークンを取得できません。)または、イベントによりキーチェーンデータが消え、(一般的に) デバイストークンが変更されます (または
didRegisterForRemoteNotificationsWithDeviceToken
再度トリガーされます) ?私のテストでは、
A. iPhone の「すべての設定をリセット」では、キーチェーン データは消去されず、トリガーされません
didRegisterForRemoteNotificationsWithDeviceToken
。B. iPhone の「すべてのコンテンツと設定を消去」は、キーチェーン データを消去し、すべてのアプリを削除します。そのため、再度呼び出すアプリを再インストールすると
didRegisterForRemoteNotificationsWithDeviceToken
。ケースAとBは気にしません.OSバージョンの更新、OSの再インストール、または何らかのイベントにより、デバイストークンも変更されたと思います。
キーチェーンとデバイストークンの間の値の変化の正しい対応状態を知っている人はいますか?
ありがとう!!
アップデート
問題は、キーチェーンデータが消えたイベントが(一般的に)「didRegisterForRemoteNotificationsWithDeviceToken」を再びトリガーするかどうかです。
そうでない場合、どのイベントですか?
objective-c - 通知設定をオフにすると、IOS 8 デバイス トークンが返されない
IOS プッシュ通知を開発していて、デバイス トークンを取得しようとしています。OSの通知設定をオンにすると、デバイストークンを取得できました。オフにすると、mydidRegisterForRemoteNotificationsWithDeviceToken
が呼び出されなくなり、デバイス トークンを取得できなくなります。
ここに私のコードがあります
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
#ifdef __IPHONE_8_0
//Right, that is the point
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeBadge
|UIUserNotificationTypeSound
|UIUserNotificationTypeAlert) categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
#else
//register to receive notifications
UIRemoteNotificationType myTypes = UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeAlert|UIRemoteNotificationTypeSound;
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:myTypes];
#endif
return YES;
}
そして私も追加しました
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
- (void)application:(UIApplication *)application handleActionWithIdentifier:(NSString *)identifier forRemoteNotification:(NSDictionary *)userInfo completionHandler:(void(^)())completionHandler
ただし、OSの通知設定をオフにすると、
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
呼び出されません。これを何時間もデバッグしましたが、うまくいきませんでした。
ios - Rails Associations Rspec
必要な関係を理解するのに苦労していowner = create(:user, device_token: device_token)
ます。owner: {device_token: device_token}
通常user_id
、この関連付けに使用します。2.device_token
コントローラーのメソッドは何をしていますか。
終わり
コントローラーコード:
ios - ios push deviceToken を 2 回目に取得する
deviceToken を取得する必要があります。アプリにプッシュ通知を追加すると、 deviceToken を介して受け取りましたdidRegisterForRemoteNotificationsWithDeviceToken
しかし、今はもう一度取得する必要があり、保存していませんでした。
didRegisterForRemoteNotificationsWithDeviceToken
一度だけ呼び出し、それ以外の場合はアプリが実行されますregisterUserNotificationSettings
すべての新規ユーザーからトークンを保存することを考えました[NSUserDefaults standardUserDefaults]
が、新規ユーザーに対してのみ機能します。現在のユーザーをどうするか?