1

Dans mon application Android Je veux travailler avec Amazon SNSNoClassDefFoundError tout en créant AmazonSNSClient en utilisant AWS SDK pour Java

AmazonSNSClient snsClient = new AmazonSNSClient(new ClasspathPropertiesFileCredentialsProvider()); 

Mais je suis arrivé cette erreur:

Caused by: java.lang.NoClassDefFoundError: com.amazonaws.services.sns.AmazonSNSClient 

J'utilise Eclipse Luna et installé AWS Boîte à outils pour Eclipse. Dans Java Build Path de mon projet, j'ai sélectionné "Add Library" -> "AWS SDK for Java".

Je ne sais pas comment résoudre ce problème. Aidez-moi, s'il vous plaît! AWS a un SDK spécifiquement pour Android https://aws.amazon.com/mobile/sdk/.

+0

Avez-vous écrit une instruction 'import' pour ce paquet et cette classe? –

+0

@ deepu513 Que voulez-vous dire? Cette ligne "import com.amazonaws.services.sns.AmazonSNSClient;" ? Bien sûr que oui. – TOP

+0

L'erreur est sur cette ligne seulement, il n'est pas en mesure d'importer le SDK. –

Répondre

2

Un guide de démarrage, y compris comment configurer Eclipse (ou utiliser Android Studio/Maven) est disponible au http://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/setup.html.

Je vous suggère fortement de ne pas intégrer les informations d'identification dans votre application lorsque vous la publiez, car elle est très peu sûre et n'importe qui pourrait décompiler votre application et voler vos informations d'identification. Au lieu de cela, je suggère de regarder Amazon Cognito pour l'authentification (c'est dans le guide lié ci-dessus).

+0

Merci beaucoup. Ça marche. Je dois créer des informations d'identification: AWSCredentials awsCredentials = new BasicAWSCredentials (accessKey, secretKey). Devrais-je cacher accessKey et secretKey et comment? – TOP

+1

Au lieu d'utiliser BasicAWSCredentials, utilisez CognitoCachingCredentialsProvider. Vous devez configurer un Cognito Identity Pool sur la console. Les instructions peuvent être trouvées ici https://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/setup.html#step-3-get-aws-credentials. Content que tu fasses du progrès! – WestonE