AusweisApp2
BuildHelper.h
gehe zur Dokumentation dieser Datei
1 /*
2  * \brief Helper to get build date and time.
3  *
4  * \copyright Copyright (c) 2014-2022 Governikus GmbH & Co. KG, Germany
5  */
6 
7 #pragma once
8 
9 #include "EnumHelper.h"
10 
11 #include <QCoreApplication>
12 #include <QPair>
13 #include <QString>
14 #include <QVector>
15 
16 #ifdef Q_OS_ANDROID
17  #include <QByteArrayList>
18  #include <QJniObject>
19 #endif
20 
21 #include <functional>
22 
23 namespace governikus
24 {
25 
26 defineEnumType(CertificateType
27  , UNKNOWN
28  , PRODUCTION
29  , DEVELOPER
30  )
31 
32 class BuildHelper
33 {
34  Q_DECLARE_TR_FUNCTIONS(BuildHelper)
35 
36  private:
37  BuildHelper() = delete;
38  ~BuildHelper() = delete;
39 
40  [[nodiscard]] static CertificateType fetchCertificateType();
41 
42  public:
43  static QVector<QPair<QLatin1String, QString>> getInformationHeader();
44  static void processInformationHeader(const std::function<void(const QString&, const QString&)>& pFunc, bool pTranslate = true);
45 
46  [[nodiscard]] static CertificateType getCertificateType();
47 
48 #ifdef Q_OS_ANDROID
49  static QJniObject getPackageInfo(const QString& pPackageName, int pFlags = 0);
50  static int getVersionCode();
51  static int getVersionCode(const QString& pPackageName);
52  static QString getPackageName();
53  static QByteArrayList getAppCertificates();
54  static QByteArrayList getAppCertificates(const QString& pPackageName);
55 #endif
56 
57 
58 };
59 
60 } // namespace governikus
A simple template renderer.
Definition: ActivationContext.h:15
UNKNOWN
Definition: ResponseApdu.h:63
defineEnumType(ActivationType, UNKNOWN, SHOWUI, STATUS, TCTOKENURL) defineEnumType(StatusFormat
Format types for status responses.