SideStore / apple-private-apis

A set of Rust libraries to interact with apple's private APIs and servers.
GNU Lesser General Public License v2.1
97 stars 20 forks source link

POC Implement developer APIs #2

Open JJTech0130 opened 1 year ago

JJTech0130 commented 1 year ago

Should create a temporary POC with initial implementation

f1shy-dev commented 1 year ago

Dadoum's vision for the API/how it should look:


let account = AppleAccount::login(...ui handlers...)?;
let xcode_session = XcodeSession::with(&account)?;

let certificate = if let Some(cert) = keyring.contains("certificate thing") {
  cert
} else {
  let certificate = CertificateSigningRequest::new();
  let accepted_certificate = xcode_session.submit_csr(certificate);
  keyring.add("certificate", &certificate);
  accepted_certificate
}

let teams = xcode_session.list_teams();

xcode_session.new_app_id(teams[0], "com.sidestore.SideStore.DWFXTYIGS")?;
let provisioning_profile = xcode_session.get_provisioning_profile(teams[0], "com.sidestore.SideStore.DWFXTYIGS");```