12 #ifndef hifi_Android_Helper_h
13 #define hifi_Android_Helper_h
19 #include <QNetworkReply>
20 #include <QtCore/QEventLoop>
22 class AndroidHelper :
public QObject {
25 static AndroidHelper& instance() {
26 static AndroidHelper instance;
29 void requestActivity(
const QString &activityName,
const bool backToScene, QMap<QString, QString> args = QMap<QString, QString>());
30 void notifyLoadComplete();
31 void notifyEnterForeground();
32 void notifyBeforeEnterBackground();
33 void notifyEnterBackground();
34 void notifyToggleAwayMode();
36 void performHapticFeedback(
int duration);
37 void processURL(
const QString &url);
38 void notifyHeadsetOn(
bool pluggedIn);
41 AndroidHelper(AndroidHelper
const&) =
delete;
42 void operator=(AndroidHelper
const&) =
delete;
44 void signup(QString email, QString username, QString password);
45 QString getDisplayName();
46 void setDisplayName(
const QString &displayName);
47 void setMyAvatarUrl(
const QString &avatarUrl);
50 void showLoginDialog(QUrl url);
51 void signupCompleted(QNetworkReply* reply);
52 void signupFailed(QNetworkReply* reply);
54 void androidActivityRequested(
const QString &activityName,
const bool backToScene, QMap<QString, QString> args = QMap<QString, QString>());
55 void qtAppLoadComplete();
56 void enterForeground();
57 void beforeEnterBackground();
58 void enterBackground();
59 void toggleAwayMode();
60 void hapticFeedbackRequested(
int duration);
62 void handleSignupCompleted();
63 void handleSignupFailed(QString errorString);
69 QString errorStringFromAPIObject(
const QJsonValue& apiObject);