Android搭載端末の年齢を問い合わせることはできますか?ユーザーがデバイスをどれくらい所有しているかを知りたい。バッテリの寿命が良い指標かもしれませんが、適切なAPIが見つかりません。 Optimumは、最初のデバイスのブート時のタイムスタンプです。何か案は?Androidデバイスの年齢
答えて
あなたがここに検討する必要があるかもしれないいくつかの困難があります。
1)ほとんどのAndroidデバイスは、(簡単に)取り外し可能なバッテリーを持っています。私は、1つのために、私は私の携帯電話を使用するときに私は交互にいくつかの電池を持っています。
2)起動時にタイムスタンプが収集されても、電話の所有者がデバイスを拭いて別のROMをインストールすると、タイムスタンプが削除される可能性があります。
私はjcollumの電話機のモデルを調べたり、そのハードウェアの一部を見て、モデルのおおよそのリリース日を決定しようとすると、最も近いソリューションかもしれません。私はあなたが実際のデバイスの年齢を決定する際に多くの正確さを見つけることは疑いの余地があります。しかし、もし私が修正してください - 私はこれも今興味がある!
私はモデルについても考えましたが、問題は次のとおりです:数ヶ月以上店舗で利用可能ないくつかのモデルです。したがって、これは非常に悪い見積りになります。 – phoku
これは興味深い質問です。デバイスが最初に購入された時期を知らせるAPIはありませんが、プロキシを探すことはできます。
- SMS受信トレイを読む - メッセージが送受信された最も早い日付です。 (もちろん、古いメッセージを削除した可能性もあります)。
- 同様に、通話記録を読み、最初に電話を受けたか、電話をかけたかを確認します。
- 稼働時間も問い合わせることができますが、ほとんどの人がデバイスをオフにしたり、再起動したりすると思います。
- ギャラリーを見ると、EXIFデータを照会して、最も古い写真がいつ撮影されたかを確認できます。
- ファイルシステムにアクセスすると、特定のファイルが作成されたときを見ることができます。
これらはどれも完璧ですが、ユーザーが最初にデバイスを入手したときにいくつかの境界を設定するために使用できます。
デバイスの年齢を確認するための確かな方法はありませんが、何とか私たちは年齢を把握することができます。
Android搭載デバイスにはいくつかのプリインストールされているアプリケーション(Sytemアプリケーション)がパッケージ化されています。ユーザーがそれを所有すると、他のアプリケーション(ユーザーアプリケーション)がインストールされます。最も早くインストールされたユーザーアプリの日付を知ることができ、デバイスの年齢を予測することができます。
*使用後にデバイスがリセットされた場合、デバイスの経過時間を見つけることは困難です。
// @returnインストールされているアプリの最初の日付。
private static String getOldestAppsAge(Context context) {
long appsAge = 0;
try {
appsAge = System.currentTimeMillis();
PackageManager pkgManager = context.getPackageManager();
List<ApplicationInfo> lsApp = pkgManager.getInstalledApplications(0);
for (ApplicationInfo localApplicationInfo : lsApp) {
String pkgName = localApplicationInfo.packageName;
if ((localApplicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) {
PackageInfo info = pkgManager.getPackageInfo(pkgName, 0);
long firstInstallTime = info.firstInstallTime;
if (firstInstallTime < appsAge && firstInstallTime > sGINGER_RELEASE_DATE) {
appsAge = info.firstInstallTime;
}
}
}
} catch (PackageManager.NameNotFoundException ex) {
ex.printStackTrace();
}
return DateUtils.convertIntoDesiredDateFormat(appsAge);
}
- いくつかのAndroidデバイスは、エポック時間(1970)を返すので、我々はいくつかのチェック条件を使用する必要があります。私は答えを知らない
- 1. 年齢間のjQueryフィルタリングの年齢
- 2. 年齢推定用年齢データベース
- 3. 年齢から年齢層に加入
- 4. 年齢
- 5. Android:性別と年齢を取得
- 6. PHPレンダリング年齢
- 7. 年齢計算
- 8. 計算年齢
- 9. 年齢検査
- 10. Moquiフレームワークから「年齢」の間の「年齢」のコールレットサービス:
- 11. 年齢のOLAPディメンション
- 12. 年齢計算 - タイムスタンプフィールド
- 13. は、年齢、出生
- 14. codeigniter年齢形式
- 15. Prometheusメトリック値年齢
- 16. 名前、年齢と
- 17. Podio年齢計算
- 18. PHP年齢確認
- 19. 年齢の形式 - 年と月
- 20. System.Speech.Synthesisの音声年齢
- 21. GoogleアナリティクスAPIのデータ年齢?
- 22. C#Webページの年齢?
- 23. 年齢制約の検索
- 24. 年齢範囲の確認
- 25. 年齢グループ間のSQL
- 26. Affectiva SDKの年齢検出
- 27. HTML - キャッシュコントロールの最大年齢
- 28. クリップ:年齢の計算
- 29. 2つの年齢フィールドに基づいたMySQLの年齢範囲クエリ
- 30. パワークエリーの日付フィールドから年齢および年齢バケットを計算する
(firstInstallTime> sGINGER_RELEASE_DATE)であれば、しかしもしあなたは、デバイスの年齢に近づけることができる携帯電話のモデルを持っていました。あなたはデバイスの時代に何を得ようとしていますか? – jcollum
私はそれのための任意のAPIがあるとは思わない。 – kosa
これは主に研究目的のものです。また、ユーザーに情報を提供するように依頼することもできますが、むしろ客観的な価値があると思います。 – phoku