2013-02-20 17 views
18

टीएल: डीआर; संस्करण;)स्व अद्यतन करने वाला ऐप

  • मेरे ऐप (स्वत: प्रारंभ आदि काम करता है)

  • यह अपने आप apk के माध्यम से अद्यतन करना चाहिए() किसी भी उपयोगकर्ता सहभागिता के बिना उपयोगकर्ता सहभागिता के बिना चलाना चाहिए

  • रूट किए गए डिवाइस संभव हो रहे हैं

समस्या:

  • एक सर्वर से एक नए apk क्वेरी करने
  • काम करता है जब एक साथ apk शुरू करने के इरादे, शीघ्र पॉप्स "एप्लिकेशन इंस्टॉल" और एक उपयोगकर्ता की पुष्टि की जरूरत है
(देखें?)

किसी भी उपयोगकर्ता इंटरैक्शन के बिना मैं इसे कैसे हल करूं?

http://code.google.com/p/auto-update-apk-client/ यह एक समाधान प्रतीत होता है, लेकिन बेहतर दृष्टिकोण होना चाहिए। Install Application programmatically on Android

लेकिन है कि मेरी समस्या का समाधान नहीं करता है:

मैं पहले से ही इस पाया।

उत्तर

31

यह हल: वहाँ इंटरनेट भर में फैले संसाधनों का एक बहुत है! : डी

यह में डिवाइसों को रूट करता है लेकिन पूरी तरह से काम करता है। यूनिक्स cmd "pm" (packageManager) का उपयोग करके आप इसे रूट के रूप में निष्पादित करते समय sdcard से apks इंस्टॉल करने की अनुमति देता है।

उम्मीद है कि यह भविष्य में कुछ लोगों की मदद कर सकता है।

public static void installNewApk() 
{ 
     try 
     { 
      Runtime.getRuntime().exec(new String[] {"su", "-c", "pm install -r /mnt/internal/Download/fp.apk"}); 
     } 
     catch (IOException e) 
     { 
      System.out.println(e.toString()); 
      System.out.println("no root"); 
     } 
} 

आवश्यक अनुमतियां:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
+0

यह मुझे त्रुटि कोड 13 9 i.e सेगमेंटेशन गलती दे रहा है। लेकिन मेरा टैबलेट पहले से ही जड़ है। कोई विचार क्यों? – jeevs

+0

क्या आप मुझे बता सकते हैं कि इस कोड को रूट टैबलेट पर चलाने के लिए आवश्यक अनुमतियां क्या हैं? – jeevs

+4

अगर मैं कर सकता, तो मैं इस 100 बार ऊपर उठ जाऊंगा! – Ben

5

मेरा सुझाव ऐप को अपडेट करने के प्लगइन तंत्र इंस्टाड का उपयोग करना है। आप वेब से कक्षाओं को गतिशील रूप से लोड कर सकते हैं और किसी भी उपयोगकर्ता इंटरैक्शन के बिना उन्हें अपने ऐप के अंदर चला सकते हैं।

How to load a Java class dynamically on android/dalvik?

http://android-developers.blogspot.com/2011/07/custom-class-loading-in-dalvik.html

+0

अच्छा विचार है, मैं इसे एक कोशिश दे देंगे, लेकिन किसी भी तरह मैं एक apk का उपयोग कर और अधिक मजबूत और त्रुटियों की संभावना कम हो जाएगा अद्यतन करने लगता है। – Thkru

+0

इसके साथ मुख्य समस्या यह है कि आप इस के साथ नई गतिविधि नहीं जोड़ सकते हैं ... – Selvin

+0

अच्छी बात, पसंद बहुत विशिष्ट आवश्यकताओं पर निर्भर करता है – Zielony

संबंधित मुद्दे