• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java SignedPreKeyRecord类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.whispersystems.libaxolotl.state.SignedPreKeyRecord的典型用法代码示例。如果您正苦于以下问题:Java SignedPreKeyRecord类的具体用法?Java SignedPreKeyRecord怎么用?Java SignedPreKeyRecord使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



SignedPreKeyRecord类属于org.whispersystems.libaxolotl.state包,在下文中一共展示了SignedPreKeyRecord类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: publishBundles

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public IqPacket publishBundles(final SignedPreKeyRecord signedPreKeyRecord, final IdentityKey identityKey,
                               final Set<PreKeyRecord> preKeyRecords, final int deviceId) {
	final Element item = new Element("item");
	final Element bundle = item.addChild("bundle", AxolotlService.PEP_PREFIX);
	final Element signedPreKeyPublic = bundle.addChild("signedPreKeyPublic");
	signedPreKeyPublic.setAttribute("signedPreKeyId", signedPreKeyRecord.getId());
	ECPublicKey publicKey = signedPreKeyRecord.getKeyPair().getPublicKey();
	signedPreKeyPublic.setContent(Base64.encodeToString(publicKey.serialize(),Base64.DEFAULT));
	final Element signedPreKeySignature = bundle.addChild("signedPreKeySignature");
	signedPreKeySignature.setContent(Base64.encodeToString(signedPreKeyRecord.getSignature(),Base64.DEFAULT));
	final Element identityKeyElement = bundle.addChild("identityKey");
	identityKeyElement.setContent(Base64.encodeToString(identityKey.serialize(), Base64.DEFAULT));

	final Element prekeys = bundle.addChild("prekeys", AxolotlService.PEP_PREFIX);
	for(PreKeyRecord preKeyRecord:preKeyRecords) {
		final Element prekey = prekeys.addChild("preKeyPublic");
		prekey.setAttribute("preKeyId", preKeyRecord.getId());
		prekey.setContent(Base64.encodeToString(preKeyRecord.getKeyPair().getPublicKey().serialize(), Base64.DEFAULT));
	}

	return publish(AxolotlService.PEP_BUNDLES+":"+deviceId, item);
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:23,代码来源:IqGenerator.java


示例2: loadSignedPreKeys

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public List<SignedPreKeyRecord> loadSignedPreKeys(Account account) {
	List<SignedPreKeyRecord> prekeys = new ArrayList<>();
	SQLiteDatabase db = this.getReadableDatabase();
	String[] columns = {SQLiteAxolotlStore.KEY};
	String[] selectionArgs = {account.getUuid()};
	Cursor cursor = db.query(SQLiteAxolotlStore.SIGNED_PREKEY_TABLENAME,
			columns,
			SQLiteAxolotlStore.ACCOUNT + "=?",
			selectionArgs,
			null, null, null);

	while (cursor.moveToNext()) {
		try {
			prekeys.add(new SignedPreKeyRecord(Base64.decode(cursor.getString(cursor.getColumnIndex(SQLiteAxolotlStore.KEY)), Base64.DEFAULT)));
		} catch (IOException ignored) {
		}
	}
	cursor.close();
	return prekeys;
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:21,代码来源:DatabaseBackend.java


示例3: testSignedPreKeyNoEviction

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public void testSignedPreKeyNoEviction() throws Exception {
  SignedPreKeyStore        signedPreKeyStore         = mock(SignedPreKeyStore.class);
  TextSecureAccountManager accountManager            = mock(TextSecureAccountManager.class);
  SignedPreKeyEntity       currentSignedPreKeyEntity = mock(SignedPreKeyEntity.class);

  when(currentSignedPreKeyEntity.getKeyId()).thenReturn(3133);
  when(accountManager.getSignedPreKey()).thenReturn(currentSignedPreKeyEntity);

  final SignedPreKeyRecord currentRecord = new SignedPreKeyRecord(3133, System.currentTimeMillis(), Curve.generateKeyPair(), new byte[64]);

  List<SignedPreKeyRecord> records = new LinkedList<SignedPreKeyRecord>() {{
    add(currentRecord);
  }};

  when(signedPreKeyStore.loadSignedPreKeys()).thenReturn(records);
  when(signedPreKeyStore.loadSignedPreKey(eq(3133))).thenReturn(currentRecord);

  CleanPreKeysJob cleanPreKeysJob = new CleanPreKeysJob(getContext());

  ObjectGraph objectGraph = ObjectGraph.create(new TestModule(accountManager, signedPreKeyStore));
  objectGraph.inject(cleanPreKeysJob);

  verify(signedPreKeyStore, never()).removeSignedPreKey(anyInt());
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:25,代码来源:CleanPreKeysJobTest.java


示例4: handleCommonRegistration

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
private void handleCommonRegistration(MasterSecret masterSecret, TextSecureAccountManager accountManager, String number)
    throws IOException
{
  setState(new RegistrationState(RegistrationState.STATE_GENERATING_KEYS, number));
  IdentityKeyPair    identityKey  = IdentityKeyUtil.getIdentityKeyPair(this, masterSecret);
  List<PreKeyRecord> records      = PreKeyUtil.generatePreKeys(this, masterSecret);
  PreKeyRecord       lastResort   = PreKeyUtil.generateLastResortKey(this, masterSecret);
  SignedPreKeyRecord signedPreKey = PreKeyUtil.generateSignedPreKey(this, masterSecret, identityKey);
  accountManager.setPreKeys(identityKey.getPublicKey(),lastResort, signedPreKey, records);

  setState(new RegistrationState(RegistrationState.STATE_GCM_REGISTERING, number));

  String gcmRegistrationId = GoogleCloudMessaging.getInstance(this).register(GcmRefreshJob.REGISTRATION_ID);
  TextSecurePreferences.setGcmRegistrationId(this, gcmRegistrationId);
  accountManager.setGcmId(Optional.of(gcmRegistrationId));

  DirectoryHelper.refreshDirectory(this, accountManager, number);

  DirectoryRefreshListener.schedule(this);
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:21,代码来源:RegistrationService.java


示例5: generateSignedPreKey

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public static SignedPreKeyRecord generateSignedPreKey(Context context, MasterSecret masterSecret,
                                                      IdentityKeyPair identityKeyPair)
{
  try {
    SignedPreKeyStore  signedPreKeyStore = new TextSecurePreKeyStore(context, masterSecret);
    int                signedPreKeyId    = getNextSignedPreKeyId(context);
    ECKeyPair          keyPair           = Curve25519.generateKeyPair();
    byte[]             signature         = Curve.calculateSignature(identityKeyPair.getPrivateKey(), keyPair.getPublicKey().serialize());
    SignedPreKeyRecord record            = new SignedPreKeyRecord(signedPreKeyId, System.currentTimeMillis(), keyPair, signature);

    signedPreKeyStore.storeSignedPreKey(signedPreKeyId, record);
    setNextSignedPreKeyId(context, (signedPreKeyId + 1) % Medium.MAX_VALUE);

    return record;
  } catch (InvalidKeyException e) {
    throw new AssertionError(e);
  }
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:19,代码来源:PreKeyUtil.java


示例6: loadSignedPreKeys

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
@Override
public List<SignedPreKeyRecord> loadSignedPreKeys() {
  synchronized (FILE_LOCK) {
    File                     directory = getSignedPreKeyDirectory();
    List<SignedPreKeyRecord> results   = new LinkedList<>();

    for (File signedPreKeyFile : directory.listFiles()) {
      try {
        results.add(new SignedPreKeyRecord(loadSerializedRecord(signedPreKeyFile)));
      } catch (IOException | InvalidMessageException e) {
        Log.w(TAG, e);
      }
    }

    return results;
  }
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:18,代码来源:TextSecurePreKeyStore.java


示例7: onRun

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws IOException {
  if (!TextSecurePreferences.isPushRegistered(context)) return;

  int availableKeys = accountManager.getPreKeysCount();

  if (availableKeys >= PREKEY_MINIMUM && TextSecurePreferences.isSignedPreKeyRegistered(context)) {
    Log.w(TAG, "Available keys sufficient: " + availableKeys);
    return;
  }

  List<PreKeyRecord> preKeyRecords       = PreKeyUtil.generatePreKeys(context, masterSecret);
  PreKeyRecord       lastResortKeyRecord = PreKeyUtil.generateLastResortKey(context, masterSecret);
  IdentityKeyPair    identityKey         = IdentityKeyUtil.getIdentityKeyPair(context, masterSecret);
  SignedPreKeyRecord signedPreKeyRecord  = PreKeyUtil.generateSignedPreKey(context, masterSecret, identityKey);

  Log.w(TAG, "Registering new prekeys...");

  accountManager.setPreKeys(identityKey.getPublicKey(), lastResortKeyRecord, signedPreKeyRecord, preKeyRecords);

  TextSecurePreferences.setSignedPreKeyRegistered(context, true);

  ApplicationContext.getInstance(context)
                    .getJobManager()
                    .add(new CleanPreKeysJob(context));
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:27,代码来源:RefreshPreKeysJob.java


示例8: registerPreKeys

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public void registerPreKeys(IdentityKey identityKey,
                            PreKeyRecord lastResortKey,
                            SignedPreKeyRecord signedPreKey,
                            List<PreKeyRecord> records)
    throws IOException
{
  List<PreKeyEntity> entities = new LinkedList<>();

  for (PreKeyRecord record : records) {
    PreKeyEntity entity = new PreKeyEntity(record.getId(),
                                           record.getKeyPair().getPublicKey());

    entities.add(entity);
  }

  PreKeyEntity lastResortEntity = new PreKeyEntity(lastResortKey.getId(),
                                                   lastResortKey.getKeyPair().getPublicKey());

  SignedPreKeyEntity signedPreKeyEntity = new SignedPreKeyEntity(signedPreKey.getId(),
                                                                 signedPreKey.getKeyPair().getPublicKey(),
                                                                 signedPreKey.getSignature());

  makeRequest(String.format(PREKEY_PATH, ""), "PUT",
              PreKeyState.toJson(new PreKeyState(entities, lastResortEntity,
                                                 signedPreKeyEntity, identityKey)));
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:27,代码来源:PushServiceSocket.java


示例9: loadSignedPreKey

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
@Override
public SignedPreKeyRecord loadSignedPreKey(final int signedPreKeyId) throws InvalidKeyIdException {
	try {
		final SignedPreKeyRecord record = SignedPreKeyTable.getInstance().loadKey(signedPreKeyId);
		if (record == null) {
			LOGGER.debug("Tried to fetch SignedPreKeyRecord for the invalid key ID [{}].", signedPreKeyId);
			throw new InvalidKeyIdException("Key id " + signedPreKeyId + " has no associated PreKeyRecord.");
		}
		return SignedPreKeyTable.getInstance().loadKey(signedPreKeyId);
	} catch (final SQLException e) {
		LOGGER.error("Signed pre key could not be fetched from database.", e);
		Errors.showError(translate("unexpected_quit"));
		Errors.stopApplication();
		throw new UnreachableCodeException();
	}
}
 
开发者ID:connorlanigan,项目名称:norvos,代码行数:17,代码来源:SignedPreKeyStore.java


示例10: loadAll

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public List<SignedPreKeyRecord> loadAll() throws SQLException {
	final String query = "SELECT signed_prekey, id FROM signed_prekeystore";
	final List<SignedPreKeyRecord> list = new LinkedList<SignedPreKeyRecord>();

	try (PreparedStatement stmt = Database.ensureTableExists(this).prepareStatement(query)) {

		final ResultSet result = stmt.executeQuery();

		while (result.next()) {
			try {
				list.add(new SignedPreKeyRecord(result.getBytes(1)));
			} catch (final IOException e) {
				throw new SQLException(
						"SignedPreKeyTable: Value of signed_prekey for id [" + result.getInt(2) + "] is invalid.",
						e);
			}
		}
		return list;
	}
}
 
开发者ID:connorlanigan,项目名称:norvos,代码行数:21,代码来源:SignedPreKeyTable.java


示例11: loadKey

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public SignedPreKeyRecord loadKey(final int id) throws SQLException {
	final String query = "SELECT signed_prekey FROM signed_prekeystore WHERE id = ?";
	try (PreparedStatement stmt = Database.ensureTableExists(this).prepareStatement(query)) {
		stmt.setInt(1, id);

		final ResultSet result = stmt.executeQuery();

		if (result.first()) {
			try {
				return new SignedPreKeyRecord(result.getBytes(1));
			} catch (final IOException e) {
				throw new SQLException("SignedPreKeyTable: Value of signed_prekey for id [" + id + "] is invalid.",
						e);
			}
		} else {
			return null;
		}
	}
}
 
开发者ID:connorlanigan,项目名称:norvos,代码行数:20,代码来源:SignedPreKeyTable.java


示例12: handleCommonRegistration

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
private void handleCommonRegistration(MasterSecret masterSecret, TextSecureAccountManager accountManager, String number)
    throws IOException
{
  setState(new RegistrationState(RegistrationState.STATE_GENERATING_KEYS, number));
  Recipient          self         = RecipientFactory.getRecipientsFromString(this, number, false).getPrimaryRecipient();
  IdentityKeyPair    identityKey  = IdentityKeyUtil.getIdentityKeyPair(this, masterSecret);
  List<PreKeyRecord> records      = PreKeyUtil.generatePreKeys(this, masterSecret);
  PreKeyRecord       lastResort   = PreKeyUtil.generateLastResortKey(this, masterSecret);
  SignedPreKeyRecord signedPreKey = PreKeyUtil.generateSignedPreKey(this, masterSecret, identityKey);
  accountManager.setPreKeys(identityKey.getPublicKey(),lastResort, signedPreKey, records);

  setState(new RegistrationState(RegistrationState.STATE_GCM_REGISTERING, number));

  String gcmRegistrationId = GoogleCloudMessaging.getInstance(this).register(GcmRefreshJob.REGISTRATION_ID);
  accountManager.setGcmId(Optional.of(gcmRegistrationId));

  TextSecurePreferences.setGcmRegistrationId(this, gcmRegistrationId);
  TextSecurePreferences.setWebsocketRegistered(this, true);

  DatabaseFactory.getIdentityDatabase(this).saveIdentity(masterSecret, self.getRecipientId(), identityKey.getPublicKey());
  DirectoryHelper.refreshDirectory(this, accountManager, number);

  DirectoryRefreshListener.schedule(this);
}
 
开发者ID:Agilitum,项目名称:TextSecureSMP,代码行数:25,代码来源:RegistrationService.java


示例13: generateSignedPreKey

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public static SignedPreKeyRecord generateSignedPreKey(Context context, MasterSecret masterSecret,
                                                      IdentityKeyPair identityKeyPair)
{
  try {
    SignedPreKeyStore  signedPreKeyStore = new TextSecurePreKeyStore(context, masterSecret);
    int                signedPreKeyId    = getNextSignedPreKeyId(context);
    ECKeyPair          keyPair           = Curve.generateKeyPair();
    byte[]             signature         = Curve.calculateSignature(identityKeyPair.getPrivateKey(), keyPair.getPublicKey().serialize());
    SignedPreKeyRecord record            = new SignedPreKeyRecord(signedPreKeyId, System.currentTimeMillis(), keyPair, signature);

    signedPreKeyStore.storeSignedPreKey(signedPreKeyId, record);
    setNextSignedPreKeyId(context, (signedPreKeyId + 1) % Medium.MAX_VALUE);

    return record;
  } catch (InvalidKeyException e) {
    throw new AssertionError(e);
  }
}
 
开发者ID:Agilitum,项目名称:TextSecureSMP,代码行数:19,代码来源:PreKeyUtil.java


示例14: createAlicePreKeyBundle

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
private PreKeyBundle createAlicePreKeyBundle(AxolotlStore aliceStore) throws InvalidKeyException {
  ECKeyPair aliceUnsignedPreKey   = Curve.generateKeyPair();
  int       aliceUnsignedPreKeyId = new Random().nextInt(Medium.MAX_VALUE);
  byte[]    aliceSignature        = Curve.calculateSignature(aliceStore.getIdentityKeyPair().getPrivateKey(),
                                                             aliceSignedPreKey.getPublicKey().serialize());

  PreKeyBundle alicePreKeyBundle = new PreKeyBundle(1, 1,
                                                    aliceUnsignedPreKeyId, aliceUnsignedPreKey.getPublicKey(),
                                                    aliceSignedPreKeyId, aliceSignedPreKey.getPublicKey(),
                                                    aliceSignature, aliceStore.getIdentityKeyPair().getPublicKey());

  aliceStore.storeSignedPreKey(aliceSignedPreKeyId, new SignedPreKeyRecord(aliceSignedPreKeyId, System.currentTimeMillis(), aliceSignedPreKey, aliceSignature));
  aliceStore.storePreKey(aliceUnsignedPreKeyId, new PreKeyRecord(aliceUnsignedPreKeyId, aliceUnsignedPreKey));

  return alicePreKeyBundle;
}
 
开发者ID:Securecom,项目名称:Securecom-Messaging,代码行数:17,代码来源:SimultaneousInitiateTests.java


示例15: createBobPreKeyBundle

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
private PreKeyBundle createBobPreKeyBundle(AxolotlStore bobStore) throws InvalidKeyException {
  ECKeyPair bobUnsignedPreKey   = Curve.generateKeyPair();
  int       bobUnsignedPreKeyId = new Random().nextInt(Medium.MAX_VALUE);
  byte[]    bobSignature        = Curve.calculateSignature(bobStore.getIdentityKeyPair().getPrivateKey(),
                                                           bobSignedPreKey.getPublicKey().serialize());

  PreKeyBundle bobPreKeyBundle = new PreKeyBundle(1, 1,
                                                  bobUnsignedPreKeyId, bobUnsignedPreKey.getPublicKey(),
                                                  bobSignedPreKeyId, bobSignedPreKey.getPublicKey(),
                                                  bobSignature, bobStore.getIdentityKeyPair().getPublicKey());

  bobStore.storeSignedPreKey(bobSignedPreKeyId, new SignedPreKeyRecord(bobSignedPreKeyId, System.currentTimeMillis(), bobSignedPreKey, bobSignature));
  bobStore.storePreKey(bobUnsignedPreKeyId, new PreKeyRecord(bobUnsignedPreKeyId, bobUnsignedPreKey));

  return bobPreKeyBundle;
}
 
开发者ID:Securecom,项目名称:Securecom-Messaging,代码行数:17,代码来源:SimultaneousInitiateTests.java


示例16: handleCommonRegistration

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
private void handleCommonRegistration(MasterSecret masterSecret, TextSecureAccountManager accountManager, String number) throws IOException {
  setState(new RegistrationState(RegistrationState.STATE_GENERATING_KEYS, number));
  IdentityKeyPair    identityKey  = IdentityKeyUtil.getIdentityKeyPair(this, masterSecret);
  List<PreKeyRecord> records      = PreKeyUtil.generatePreKeys(this, masterSecret);
  PreKeyRecord       lastResort   = PreKeyUtil.generateLastResortKey(this, masterSecret);
  SignedPreKeyRecord signedPreKey = PreKeyUtil.generateSignedPreKey(this, masterSecret, identityKey);
  accountManager.setPreKeys(identityKey.getPublicKey(),lastResort, signedPreKey, records);

  setState(new RegistrationState(RegistrationState.STATE_GCM_REGISTERING, number));

  String gcmRegistrationId = GoogleCloudMessaging.getInstance(this).register("225505072490");
  TextSecurePreferences.setGcmRegistrationId(this, gcmRegistrationId);
  accountManager.setGcmId(Optional.of(gcmRegistrationId));

  DirectoryHelper.refreshDirectory(this, accountManager, number);

  DirectoryRefreshListener.schedule(this);
}
 
开发者ID:Securecom,项目名称:Securecom-Messaging,代码行数:19,代码来源:RegistrationService.java


示例17: registerPreKeys

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public void registerPreKeys(IdentityKey identityKey,
                            PreKeyRecord lastResortKey,
                            SignedPreKeyRecord signedPreKey,
                            List<PreKeyRecord> records)
        throws IOException
{
    List<PreKeyEntity> entities = new LinkedList<>();

    for (PreKeyRecord record : records) {
        PreKeyEntity entity = new PreKeyEntity(record.getId(),
                record.getKeyPair().getPublicKey());

        entities.add(entity);
    }

    PreKeyEntity lastResortEntity = new PreKeyEntity(lastResortKey.getId(),
            lastResortKey.getKeyPair().getPublicKey());

    SignedPreKeyEntity signedPreKeyEntity = new SignedPreKeyEntity(signedPreKey.getId(),
            signedPreKey.getKeyPair().getPublicKey(),
            signedPreKey.getSignature());

    makeRequest(String.format(PREKEY_PATH, ""), "PUT",
            PreKeyState.toJson(new PreKeyState(entities, lastResortEntity,
                    signedPreKeyEntity, identityKey)));
}
 
开发者ID:Securecom,项目名称:Securecom-Messaging,代码行数:27,代码来源:PushServiceSocket.java


示例18: storeSignedPreKey

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public void storeSignedPreKey(Account account, SignedPreKeyRecord record) {
	SQLiteDatabase db = this.getWritableDatabase();
	ContentValues values = new ContentValues();
	values.put(SQLiteAxolotlStore.ID, record.getId());
	values.put(SQLiteAxolotlStore.KEY, Base64.encodeToString(record.serialize(), Base64.DEFAULT));
	values.put(SQLiteAxolotlStore.ACCOUNT, account.getUuid());
	db.insert(SQLiteAxolotlStore.SIGNED_PREKEY_TABLENAME, null, values);
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:9,代码来源:DatabaseBackend.java


示例19: SQLiteAxolotlStore

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
public SQLiteAxolotlStore(Account account, XmppConnectionService service) {
	this.account = account;
	this.mXmppConnectionService = service;
	this.localRegistrationId = loadRegistrationId();
	this.currentPreKeyId = loadCurrentPreKeyId();
	for (SignedPreKeyRecord record : loadSignedPreKeys()) {
		Log.d(Config.LOGTAG, AxolotlService.getLogprefix(account) + "Got Axolotl signed prekey record:" + record.getId());
	}
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:10,代码来源:SQLiteAxolotlStore.java


示例20: loadSignedPreKey

import org.whispersystems.libaxolotl.state.SignedPreKeyRecord; //导入依赖的package包/类
/**
 * Load a local SignedPreKeyRecord.
 *
 * @param signedPreKeyId the ID of the local SignedPreKeyRecord.
 * @return the corresponding SignedPreKeyRecord.
 * @throws InvalidKeyIdException when there is no corresponding SignedPreKeyRecord.
 */
@Override
public SignedPreKeyRecord loadSignedPreKey(int signedPreKeyId) throws InvalidKeyIdException {
	SignedPreKeyRecord record = mXmppConnectionService.databaseBackend.loadSignedPreKey(account, signedPreKeyId);
	if (record == null) {
		throw new InvalidKeyIdException("No such SignedPreKeyRecord: " + signedPreKeyId);
	}
	return record;
}
 
开发者ID:xavierle,项目名称:messengerxmpp,代码行数:16,代码来源:SQLiteAxolotlStore.java



注:本文中的org.whispersystems.libaxolotl.state.SignedPreKeyRecord类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java PostprocessReformattingAspect类代码示例发布时间:2022-05-23
下一篇:
Java SignatureInformation类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap