मुझे अपने आवेदन में अनुमतियों में कोई समस्या है। ऐसा लगता है कि मेरे ऐप को स्टोरेज पर फाइलें बनाने की अनुमति नहीं है।एंड्रॉइड ओपनफाइलऑटपुट - स्टोरेज बनाने की कोई अनुमति नहीं
String FILENAME = "hello_file";
String string = "hello world!";
FileOutputStream fos;
try
{
fos = getApplicationContext()
.openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();
}
catch (Exception e)
{
e.printStackTrace();
}
अपने मुख्य वर्ग onCreate हैंडलर में, और मैं हमेशा मिलती है:
06-02 13:23:52.996: WARN/ApplicationContext(6278): Unable to create files directory
06-02 13:23:54.203: WARN/System.err(6278): java.lang.NullPointerException
06-02 13:23:54.226: WARN/System.err(6278): at android.app.ContextImpl.openFileOutput(ContextImpl.java:464)
06-02 13:23:54.234: WARN/ActivityManager(2470): Activity idle timeout for HistoryRecord{485ebe10 com.servision.svclient/.Main}
06-02 13:23:54.257: WARN/System.err(6278): at android.content.ContextWrapper.openFileOutput(ContextWrapper.java:158)
06-02 13:23:54.273: WARN/System.err(6278): at com.servision.svclient.Main.onCreate(Main.java:59)
06-02 13:23:54.277: WARN/System.err(6278): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
06-02 13:23:54.285: WARN/System.err(6278): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
06-02 13:23:54.293: WARN/System.err(6278): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
06-02 13:23:54.296: WARN/System.err(6278): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
06-02 13:23:54.304: WARN/System.err(6278): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
06-02 13:23:54.312: WARN/System.err(6278): at android.os.Handler.dispatchMessage(Handler.java:99)
06-02 13:23:54.320: WARN/System.err(6278): at android.os.Looper.loop(Looper.java:123)
06-02 13:23:54.324: WARN/System.err(6278): at android.app.ActivityThread.main(ActivityThread.java:4627)
06-02 13:23:54.332: WARN/System.err(6278): at java.lang.reflect.Method.invokeNative(Native Method)
06-02 13:23:54.336: WARN/System.err(6278): at java.lang.reflect.Method.invoke(Method.java:521)
06-02 13:23:54.343: WARN/System.err(6278): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
06-02 13:23:54.355: WARN/System.err(6278): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
06-02 13:23:54.359: WARN/System.err(6278): at dalvik.system.NativeStart.main(Native Method)
जवाब में।
मुझे विश्वास है कि यह मेरी परियोजना की परिभाषाओं में बहुत आसान है। लेकिन मैं यह नहीं समझ सकता कि यह क्या है।
यदि मैं एक और प्रोजेक्ट बनाता हूं और इसमें एक ही कोड डालता हूं, तो यह ठीक काम करता है।
मेरी मैनिफ़ेस्ट फ़ाइल इस तरह दिखता है:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.servision.svclient"
android:versionCode="1"
android:versionName="1.0">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
<application android:icon="@drawable/main" android:label="@string/app_name" android:debuggable="true">
<activity android:name=".Main" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".StreamActivity" android:label="@string/app_name"/>
<activity android:name=".MainActivity"/>
<activity android:name=".GatewayList"/>
<activity android:name=".StatisticsActivity"/>
<activity android:name=".SettingsActivity"/>
<activity android:name=".MapsActivity"/>
<activity android:name=".AboutActivity"/>
</application>
<uses-sdk android:minSdkVersion="8" />
</manifest>
मेन.जावा –
की आपकी लाइन 59 में क्या है, मुझे सच में नहीं लगता कि आंतरिक संग्रहण को अनुमति की आवश्यकता है। पोस्ट स्टैक ट्रेस भरा हुआ है? या आप लाइनों को छोड़ रहे हैं। – doNotCheckMyBlog
एंड्रॉइड.permission.WRITE_INTERNAL_STORAGE –