2010-05-22 10 views
18

मैं अपने एंड्रॉइड फोन (मोटो Droid) में एक संपूर्ण चिकित्सा शब्दकोश जोड़ना चाहता हूं। मैं टेक्स्ट संदेश भेजने में सक्षम होना चाहता हूं और मेडिकल शब्द अनुमानित पाठ में होना चाहता हूं।एंड्रॉइड के उपयोगकर्ता डिक्शनरी में शब्द जोड़ें

मैं इसे पूरा करने वाला एक छोटा ऐप लिखने की कोशिश कर रहा हूं, लेकिन स्टार्टअप पर ऐप को हर चीज क्रैश करने का प्रयास करता हूं। मैंने मोबाइल प्लेटफ़ॉर्म के लिए कभी भी एक ऐप नहीं लिखा है, जो कि मेरे लिए पहला है। यहां ठीक से काम नहीं कर रहा है।

public class WordAdd extends Activity { 
/** Called when the activity is first created. */ 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 


    UserDictionary.Words.addWord(this , "newMedicalWord", 1, UserDictionary.Words.LOCALE_TYPE_CURRENT); 
} 

}

यह ऐसा करने के लिए सरल लगता है, फिर भी मैं इतना अटक कर रहा हूँ। आप जो भी मदद दे सकें मैं उसका आभारी होऊंगा।

संपादित करें: मुझे यह उल्लेख करना चाहिए कि मुझे एवीडी (वर्चुअल डिवाइस) में एंड्रॉइड 2.1 के लिए यह त्रुटि मिल रही है।

EDIT 2:User Dictionary एंड्रॉइड एपीआई में पाया जाता है। addWord एक स्थिर विधि है। मैं UserDictionary घोषित नहीं करता क्योंकि मैं सिर्फ एक स्थिर विधि का उपयोग करता हूं। उम्र बढ़ने के बाद से मैंने जावा में कुछ भी विकसित किया है और यह किसी भी मोबाइल विकास पर मेरा पहला प्रयास है, इसलिए मुझे नहीं पता कि मैं कुछ गलत कर रहा हूं या नहीं।

+0

"Android" एक उत्पाद का नाम है? मेरे जैसे कई लोग !, संदर्भ द्वारा उलझन में हो सकता है। कार्रवाई की तरह लगता है कि यह एक सेल फोन के लिए कुछ होगा; यदि यह मामला है, तो आपको सवाल में ऐसा कहना चाहिए! –

+3

मैंने मोटोरोला Droid का उल्लेख किया था। मुझे लगता है मैंने सोचा कि पर्याप्त जानकारी होगी। उसके लिए माफ़ करना। – SaulBack

+2

हाहा, वहां आसान दादाजी; यह एक सेलफोन है;) – Pierreten

उत्तर

9

<application> तत्व के बाहर अपने एप्लिकेशन की AndroidManifest.xml फ़ाइल में इस जोड़ें:

<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY"></uses-permission> 
-2

मिमी मिमी जहां उपयोगकर्ता डिक्शनरी परिभाषित किया गया है? बस

UserDictionary = new UserDictionaryType(); 
UserDictionary.Words = new WordsType(); 

या कक्षा में सिर्फ वर्ग घोषणा के तहत fallowing को परिभाषित हो सकता है आप करना चाहिए:

static UserDictionaryType UserDictionary; 

यदि यह मामला यह स्पष्ट है क्यों अपने app दुर्घटनाग्रस्त हो गया है ... (कर्नेल मोड पर कर और "ह्यूस्टन हमें एक समस्या मिली" आप पॉइंटर तक नहीं पहुंच सकते हैं जिसे आपने जावा में भी स्मृति के लिए आवंटित नहीं किया है ...)

लेकिन फिर से मैं आपके कोड से परिचित नहीं हूं जहां यह परिभाषित किया गया है और मैं चाहता हूं आपकी मदद करने की कोशिश करें ...

EDIT1: भले ही उपयोगकर्ता डिक्शनरी एपीआई में मौजूद है, आपने एक पर घोषित नहीं किया है ... आपको किसी भी स्थिर उपयोगकर्ता डिक्शनरी ud = new UserDictionary() की घोषणा करनी चाहिए;

+0

मेरा संपादन 2 देखें। – SaulBack

0

अपनी गतिविधि की शुरुआत में ब्रेकपॉइंट सेट करने और डीबगर के साथ कोड के माध्यम से कदम उठाने का प्रयास करें। यह आपको अलग करने में मदद कर सकता है कि क्या कॉल वास्तव में दुर्घटना का कारण बन रहा है, और अंतर्निहित अपवाद क्या है।

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