অ্যান্ড্রয়েড ওয়েবভিউ নেট :: ERR_CACHE_MISS বার্তা দেয়


152

আমি একটি ওয়েব অ্যাপ্লিকেশন তৈরি করেছি এবং একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করতে চাই যাতে একটি ওয়েব ভিউ রয়েছে যা আমার ওয়েব অ্যাপ্লিকেশনটি দেখায়। গুগল বিকাশকারী থেকে কোনও অ্যাপ্লিকেশন তৈরির নির্দেশাবলী অনুসরণ করার পরে, আমি এটিকে অ্যান্ড্রয়েড 5.1.1 এর সাথে সফলভাবে আমার ফোনে ইনস্টল করেছি।

তবে, আমি যখন প্রথমবার অ্যাপটি চালাচ্ছি তখন ওয়েবভিউ বার্তাটি দেখায়:

ওয়েব পেজ উপলব্ধ নয়

[Lorem Ipsum URL] এ থাকা ওয়েব পৃষ্ঠাটি লোড করা যায়নি:

নেট :: ERR_CACHE_MISS


হতে পারে এই লিঙ্কটি আপনাকে স্ট্যাকওভারফ্লো.com
বিধান

উত্তর:


332

আমার সমস্যা পরিবর্তন করে সমস্যার সমাধান করেছি AndroidManifest.xml

পুরাতন: <uses-permission android:name="android.permission.internet"/>
নতুন:<uses-permission android:name="android.permission.INTERNET"/>


মানুষ, তুমি আমার দিন বাঁচিয়েছ! কর্ডোভা 7.0.1 এ আপগ্রেড করার পরে কোনও এক্সএইচআর কাজ করছে না। আমি ম্যানুয়ালি এটিকে ম্যানিফেস্টে এবং ... বুমে যুক্ত করেছি! :)
রাদাচিনা

5
ইন্টারনেট নেই, তবে ইন্টারনেট! বড় এক! :)
মাইক কেসকিনভ

27

আমি উপরের সমাধানটির চেষ্টা করেছি, তবে নিম্নলিখিত কোডটি আমাকে এই সমস্যাটি বন্ধ করতে সহায়তা করে।

if (18 < Build.VERSION.SDK_INT ){
    //18 = JellyBean MR2, KITKAT=19
    mWeb.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
}

কোথায় এই Buildএবং mwebvars?
মাইকেল পাচেকো

@ মিশেলপাচেকো বিল্ডটি অ্যান্ড্রয়েড সিস্টেম থেকে এসেছে এবং এমইউবিইবি হ'ল ওয়েবভিউ অবজেক্ট
অ্যাকাও পিট্টা

24

ইন্টারনেট সম্পর্কিত যে কোনও কিছুর জন্য আপনার অ্যাপ্লিকেশনটির অবশ্যই ম্যানিফেস্টফাইলে ইন্টারনেটের অনুমতি থাকতে হবে। আমি অনুমতি যোগ করে এই সমস্যাটি সমাধান করেছিAndroidManifest.xml

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

18

উত্তর একত্রিত! আমি কেবলমাত্র সমস্ত উত্তরকে একটি বিস্তৃত একটিতে একত্রিত করতে চেয়েছিলাম।

1.<uses-permission android:name="android.permission.INTERNET" /> উপস্থিত আছে কিনা তা পরীক্ষা করে দেখুন manifest.xmlনিশ্চিত করুন যে নীচে নেস্টেড করা হয়েছে <manifest>এবং<application> । ধন্যবাদ সাজিদ 45 এবং লায়ানিয়াস ভেলাজ্জুয়েজকে

২. নিশ্চিত হোন যে আপনি <uses-permission android:name="android.permission.INTERNET"/>হ্রাসের পরিবর্তে ব্যবহার করছেন <uses-permission android:name="android.permission.internet"/>অ্যালান_শী এবং ক্রিওসকে অনেক ধন্যবাদ ।

৩. যদি ন্যূনতম সংস্করণটি কেকে নীচে থাকে তবে আপনার কাছে যাচাই করুন

if (18 < Build.VERSION.SDK_INT ){
    //18 = JellyBean MR2, KITKAT=19
    mWeb.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
}

অথবা

if (Build.VERSION.SDK_INT >= 19) {
        mWebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
}

কারণ সঠিক ওয়েবভিউ কেবলমাত্র কে (এসডিকে 19) এ যুক্ত করা হয়। ধন্যবাদ Devavrata , মাইক ChanSeong কিম এবং Liyanis Velazquez

4. আপনার কাছে নেই তা নিশ্চিত করুন webView.getSettings().setBlockNetworkLoads (false);। এটি নির্দেশ করার জন্য টেকনিখকে ধন্যবাদ ।

৫. যদি অন্য সমস্ত কিছু ব্যর্থ হয় তবে নিশ্চিত হয়ে নিন যে আপনার অ্যান্ড্রয়েড স্টুডিও, অ্যান্ড্রয়েড এসডিকে এবং এমুলেটর চিত্রটি (আপনি যদি ব্যবহার করেন) আপডেট হয়েছে। এবং যদি আপনি এখনও সমস্যাটি পূরণ করছেন তবে কেবল একটি নতুন প্রশ্ন খুলুন এবং আপনার ইউআরএলটিতে নীচে একটি মন্তব্য করুন।


হাই জেহাতা। ভোটের মন্তব্য বা পোস্টগুলিতে পরামর্শ যুক্ত করবেন না। বেশিরভাগ পাঠক এমনকি সাইন ইন করেন না, একা ভোট দিন, তাই এটি বেশিরভাগ পাঠকের পক্ষে কার্যকর তথ্য নয়। মানুষকে জৈব ভোট দিন vote
অর্ধেক

8

ব্যবহার

if (Build.VERSION.SDK_INT >= 19) {
        mWebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
    }

এটি ত্রুটি সমাধান করা উচিত।


এই উত্তরটি আমাকে অনেক সাহায্য করেছে, ধন্যবাদ। তবে আমি ব্যবহার করিWebSettings.LOAD_NO_CACHE
আলেকজান্ডার স্ক্ভর্টোসভ

6

এছাড়াও নিশ্চিত করুন যে আপনার কোডটি সেটব্লক নেটওয়ার্কলডগুলির ক্ষেত্রে সত্য নয়

webView.getSettings().setBlockNetworkLoads (false);
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.