Google Play पर स्वचालित रूप से एपीके अपलोड करने के लिए एपीआई? [बन्द है]


95

क्या कोई एपीआई या टूल है जो मुझे Google Play पर एपीके को स्वचालित रूप से अपलोड करने में सक्षम बनाता है? मैं किसी भी मैनुअल स्टेप्स या ग्राफिकल इंटरफेस के बिना अपने अकाउंट में कस्टमाइज्ड ऐप्स को अपने आप प्रकाशित करना चाहता हूं।

मैंने आस-पास खोज की, लेकिन ऐसा करने के लिए कोई भी एपीआई नहीं मिल सका (केवल एंड्रॉइड-पब्लिशर लेकिन यह नाम के बावजूद प्रकाशन का समर्थन नहीं करता है)। क्या किसी ने पहले से ही इसे हल किया, एक मूल विशेषता की तरह लगता है?


3
मुझे नहीं लगता कि कोई भी है, लेकिन यह एक दिलचस्प सवाल है
स्टीफन

8
टाइम्स परिवर्तन - टिप्पणी को प्रतिबिंबित करते हैं कि अब ऐसा एपीआई है - पिछली टिप्पणियाँ और उत्तर अब पुराने हैं - सही उत्तर अब शार्शी से है।
रिचर्ड ले मेसुरियर

इसे भी देखें: stackoverflow.com/a/52374171/1531054
SD

उन लोगों के लिए जो एक वेब खोज के माध्यम से यहां आए और बस एक उत्तर चाहते हैं, ऑफटॉपिक या नहीं: फास्टलेन एक उपकरण है जो प्ले स्टोर और ऐप स्टोर की तैनाती को स्वचालित करता है।
थॉमस

वहाँ एक है: github.com/codebysd/java-play-store-uploader
SD

जवाबों:


63

आज के रूप में एक नया आधिकारिक प्रकाशन एपीआई है जो आपको किसी भी चैनल (यानी अल्फा, बीटा ...) या शीर्षक और विवरण और अधिक अपडेट करने के लिए अपलोड करने की अनुमति देता है।

डॉक्स से:

  • ऐप के नए संस्करण अपलोड करना, विभिन्न ट्रैक्स (अल्फा, बीटा, स्टेज्ड रोलआउट, या सामग्री) पर APKs असाइन करके ऐप्स रिलीज़ करना
  • Google Play Store लिस्टिंग बनाना और संशोधित करना, सहित
  • स्थानीयकृत पाठ और ग्राफिक्स और मल्टी-डिवाइस स्क्रीनशॉट

अधिक जानकारी के लिए यहां देखें : https://developers.google.com/android-publisher/


28
ध्यान दें कि एपीआई है केवल के लिए पहले से ही प्रकाशित क्षुधा (जो है कम से कम एक APK अपलोड)।
लेओ लाम

Google के साथ प्राधिकरण एक चाल हो सकता है। यहां बताया गया है कि कमांड लाइन के जरिए टोकन प्राप्त करना कैसा होगा। PS .p12 कुंजी उल्लेख तब तक काम नहीं करेगा जब तक कि आप इसे yo .pem में परिवर्तित नहीं करते हैं, "कमांड के साथ" खुलता है pkcs12 -in my_google_key.p12 -out my_google_key.pem -nodes -clertert "
Vitalii

2
- इस Gradle प्लगइन के साथ एक नजर है github.com/Triple-T/gradle-play-publisher
शंकर वी

3
किसी को पता है कि क्या केवल preexistent क्षुधा अद्यतन करने का प्रतिबंध अभी भी लागू होता है?
रिकार्डो पेड्रोनी

1
@ डॉक्युज़ोव हाँ केवल अपडेट करता है
शशि

22

gradle-play-publisher Google Play Store पर आपके एपीके और ऐप विवरण अपलोड करने के लिए एक ग्रेडल प्लगइन है।

मैं बस ./gradlew publishApkReleaseअपने टर्मिनल से चलता हूं और यह एपीके और हाल के परिवर्तनों का सारांश अपलोड करता है। इस तरह के और भी कार्य उपलब्ध हैं।

यह Google Play डेवलपर API का उपयोग करता है


हाय, Im ग्रेड करने के लिए नया, gradle-play-publisher कहता है "एक बार जब आप इस प्लगइन को अपने एंड्रॉइड एप्लिकेशन प्रोजेक्ट पर लागू करते हैं तो आप इसे प्ले ब्लॉक के माध्यम से कॉन्फ़िगर कर सकते हैं", मुझे प्ले ब्लॉक को जोड़ने की आवश्यकता कहां है?
अकीब मुमताज

आपकी build.gradleफ़ाइल में
कार्लो रोड्रिगेज

क्या आप अपनी बिल्ड फ़ाइल साझा कर सकते हैं? Im लगातार इस अपवाद को प्राप्त कर रहा है "org.gradle.execution.TaskSelectionException: टास्क 'publishApkRelease' रूट प्रोजेक्ट में नहीं मिला"
अकीब मुमताज

मैंने अपना प्रश्न stackoverflow.com/questions/31449533/…
Aqib Mumtaz

वास्तव में सक्रिय परियोजना किसी भी तरह से नहीं
पुराने26

20

Google Play के साथ काम करने को स्वचालित करने के लिए कोई आधिकारिक Google API नहीं है। (यह जुलाई 2014 के बाद सच नहीं है)

आप एक स्क्रिप्ट बना सकते हैं जो एक वेब ब्राउज़र को एनकैप्सुलेट करता है और यूजर बीवहियर को सिमुलेट करता है: HTML फ़ील्ड्स ढूंढें, वहाँ जानकारी दर्ज करें, पेज सबमिट करें, आदि।

हम ऐसे ओपन-सोर्स पायथन टूल पर काम कर रहे हैं: https://github.com/onepf/AppDF/tree/master/tools/uploader


6
यह जुलाई 2014 के अंत तक सही था, जब Google ने एक प्रकाशन एपीआई जोड़ा। अधिक जानकारी के लिए शशि से जवाब देखें।
लेओ लाम

3
यह उत्तर अब गलत है।
रिचर्ड ले मेसुरियर

4

मैंने इस सवाल पर भी इसका जवाब दिया , लेकिन मुझे लगा कि मैं यहां भी यही टिप्पणी करूंगा। यदि ऐसा करने का गलत तरीका है तो मुझे बताएं (उत्तरों को दोहराते हुए)।

मैं एक ऐसे ग्रेड प्लगइन का निर्माण करने में सक्षम था जो आपके द्वारा किसी भी स्वाद / संस्करण की इच्छा रखने वाले किसी भी ट्रैक को प्रकाशित करता है जिसे आप नए Google Play प्रकाशन API का उपयोग करना चाहते हैं।

यहां देखें सूत्र: https://github.com/bluesliverx/savillians-gradle

मैं इसे maven केंद्रीय में प्रकाशित करने पर काम कर रहा हूं, इसलिए इसे एक बिल्ड स्क्रिप्ट में उपयोग किया जा सकता है, लेकिन अभी के लिए आप android-publisherरेपो में उपनिर्देशिका को पकड़ सकते हैं , इसे अपने ग्रेडेल बिल्ड की जड़ में रख सकते हैं, और फ़ोल्डर का नाम बदल सकते हैं buildSrcbuild.gradleजिस Android प्रोजेक्ट को आप प्रकाशित करना चाहते हैं, उसके लिए फ़ाइल में निम्न पंक्ति का उपयोग करें:

apply plugin: com.savillians.gradle.androidpublisher.AndroidPublisherPlugin

फिर आप androidPublisherबिल्ड.ग्रेड फ़ाइल में किसी ब्लॉक का उपयोग करके अपनी प्रकाशन सेटिंग सेट कर सकते हैं ।

android {
    ...
}
androidPublisher {
    applicationName = "Company-Name-Product-Name/1.0"
    packageName = "<package name>"
    serviceAccountEmail = "<service account email>"
    serviceAccountKeyFile = file('<p12 keyfile - NOT the json file>')
    track = "alpha" // default, don't need to specify
    variantName = "release" // default, don't need to specify
}

सुनिश्चित करें कि आपके द्वारा बनाया गया सेवा खाता "रिलीज़ मैनेजर" अनुमतियाँ हैं, p12 कुंजी फ़ाइल डाउनलोड करें और इसे प्रोजेक्ट की निर्देशिका में डालें। फिर यह कमांड चलाएँ:

gradle androidPublish

यह आपके द्वारा निर्दिष्ट क्रेडेंशियल्स का उपयोग करके Google Play पर भेज देगा। सौभाग्य और मुझे बताएं कि क्या आपके पास सवाल है क्योंकि यह बिल्कुल नया है।


कृपया लगता है stackoverflow.com/questions/29816342/... करता gradle androidPublishहस्ताक्षरित APK और अपलोड playstore को उत्पन्न
नेविन राज विक्टर

जवाब दे दिया। यह प्लगइन वही करेगा जो आप ढूंढ रहे हैं।
बक्साविल

hi @bksaville मौजूदा ऐप्स के लिए यह प्लगइन सपोर्ट है। क्या हम नए बनाए गए ऐप्स के लिए उपयोग नहीं कर सकते।
सजीथ विजसेकर

मैंने पाया कि सेवा खाते का निर्माण करते समय रोल के लिए "रिलीज़ मैनेजर" के बजाय मुझे इसकी आवश्यकता थी: भूमिका ड्रॉपडाउन में "सेवा खाते" -> "सेवा खाता उपयोगकर्ता" और "सेवा खाता टोकन निर्माता"
मैक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.