#iphone #sdk #authorize.net
#iPhone #sdk #authorize.net
Вопрос:
Я пытаюсь интегрировать iPhone SDK в свой проект. (AIM) У меня возникли некоторые трудности, и я не могу заставить это работать.
Я следовал руководству https://developer.authorize.net/integration/fifteenminutes/ios
AuthNet *an = [AuthNet getInstance];
[an setDelegate:self];
[an mobileDeviceLoginRequest: mobileDeviceLoginRequest];
В приведенном выше коде an
остается нулевым, потому что класс AuthNet не создается при вызове getInstance()
.
В файле README говорится, что я должен вызвать
[AuthNet authNetWithAPILoginID:@"YOUR_LOGIN_ID" andTransactionKey:@"YOUR_TRANSACTION_KEY" forEnvironment:ENV_TEST];
для того, чтобы создать экземпляр singleton. НО внутри класса «AuthNet» такого метода нет.
Я что-то упускаю?
Ответ №1:
-(void)registerDevice
{
MobileDeviceRegistrationRequest *registrationRequest=[MobileDeviceRegistrationRequest mobileDeviceRegistrationRequest];
registrationRequest.anetApiRequest.merchantAuthentication.name=@"loginid";
registrationRequest.anetApiRequest.merchantAuthentication.password = @"password";
registrationRequest.mobileDevice.mobileDescription=@"asd";
registrationRequest.mobileDevice.mobileDeviceId=[[[UIDevice currentDevice] uniqueIdentifier]
stringByReplacingOccurrencesOfString:@"-" withString:@"_"];
[AuthNet authNetWithEnvironment:ENV_TEST];
AuthNet *an = [AuthNet getInstance];
[an setDelegate:self];
[an mobileDeviceRegistrationRequest:registrationRequest];
}
Вызовите этот метод первым, чтобы зарегистрировать ваше устройство.
Комментарии:
1. я делаю то же самое, поэтому я попробовал ваш код, я получаю ошибку при попытке зарегистрировать устройство В КАЧЕСТВЕ пространства имен предупреждение: xmlns: URI AnetApi / xml /v1/schema /AnetApiSchema.xsd не является абсолютным ttp://www.w3.org / 2001/XMLSchema» xmlns=»AnetApi/ xml / v1 / schema /AnetApiSchema.xsd». Пожалуйста, помогите мне, где я ошибаюсь
2. какую учетную запись вы используете для тестирования в изолированной среде или реальную учетную запись?
3. Интересно, что все ваши довольно простые и короткие ответы набирают около 10 голосов «За».
4. эта ошибка возникает, когда ваше устройство не зарегистрировано. Итак, напишите описанный выше метод для регистрации вашего устройства и замените его учетными данными ur
5. Я пытался сделать то же самое, что описано выше, но, похоже, что метод uniqueIdentifier устарел, поэтому вместо этого я попробовал метод identifierForVendor, и я получаю сообщение об ошибке, в котором говорится, что значение ‘<__NSConcreteUUID 0x1c5af630> xxxxxxx’ недопустимо в соответствии с его типом данных ‘String’ — фактическая длина больше, чем сообщение о значении MaxLength.code = E00003 итак, в чем может быть ошибка в этом случае.