我正在努力整合我正在使用AWS Cognito創建的應用程序的登錄屏幕,並一直遵循一步一步的指示來連接服務器。AWS Cognito集成
STEP 5的7 複製移動樞紐助手和自定義代碼
複製的src/main/JAVA/COM/amazonaws從你下載到你的Android Studio項目中的java/COM文件夾中的代碼文件夾。
此文件夾包含一組已經爲您自定義生成的助手類。這些是基於您的項目配置以及在配置項目時爲您創建的AWS雲資源和標識符生成的。這些類簡化了支持項目所需的所有SDK的使用。
它還包含AWSMobileClient的源代碼,該代碼是一個單例組件,它啓動應用程序並創建身份管理器以與Amazon Cognito建立用戶身份。如果您的項目使用Mobile Hub NoSQL功能,則AmazonAws文件夾還將包含模型類,以簡化對您配置的DynamoDB表的訪問。
我相信我遇到了這個位的後半部分的問題,因爲我不確定什麼是單例組件或者如何將它插入到代碼中。我已將它創建爲一個Java類,幷包含所包含的代碼
package com.your.app;
import android.support.multidex.MultiDexApplication; import android.util.Log;
import com.amazonaws.mobile.AWSMobileClient;
/** *應用程序類負責初始化單例和其他常見組件。 */ 公共類應用擴展MultiDexApplication {
private final static String LOG_TAG = Application.class.getSimpleName();
@Override
public void onCreate() {
Log.d(LOG_TAG, "Application.onCreate - Initializing application...");
super.onCreate();
initializeApplication();
Log.d(LOG_TAG, "Application.onCreate - Application initialized OK");
}
private void initializeApplication() {
// Initialize the AWS Mobile Client
AWSMobileClient.initializeMobileClientIfNecessary(getApplicationContext());
// ... Put any application-specific initialization logic here ...
}
}
但是我得到的清單紅線,因爲它沒有連接到一個XML文件,但說明不說增加一個XML或將其附加到XML文件,所以我不知道如何連接這些功能。我想象應該在啓動之後填充Application類,即App打開登錄屏幕並以某種方式啓動與服務器的通信以傳輸鍵入到文本字段中的字符串。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.jason.mvp">
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="Dreamer"
android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".LoginActivity" android:theme="@style/NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Application"/>
<activity android:name=".MainActivity" />
<activity android:name=".RegisterActivity" android:theme="@style/NoActionBar"
android:parentActivityName="com.example.jason.mvp.LoginActivity" >
</activity>
</application>
</manifest>
任何人都可以幫助我!謝謝!
Kevin的解決方案能解決您的問題嗎? –