مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

alireza742

عضویت از 1395/06/29

خطای دیبابیس در اندروید 7

  • یکشنبه 6 اسفند 1396
  • 17:34
تشکر میکنم

سلام 

من یه برنامه دارم که از دیتابیس sqlite  استفاده کرم وقتی که برنامه رو اندروید ورژن 7 اجرا میشه این خطا رو اول برنامه میده 

Xamarin.Android N: unauthorized access to "/system/lib64/libsqlite.so"

ولی تو نسخه های پایینتر این خطا رو نمیده

علت و راه حل چیه؟

ممنون

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • دوشنبه 7 اسفند 1396
  • 09:20

متن ارور کاملا گویاست

دسترسی نداره

آیا Permission های مورد نیاز را ست کردید ؟

کاربر سایت

alireza742

عضویت از 1395/06/29

  • دوشنبه 7 اسفند 1396
  • 14:19

سلام

چه دسترسی برای ساخت دیتابیس لازم هست

این کد من هست

  private string dbName = "CDB5";
        private string DbPath = "";
        private SQLiteConnection db;


        public ManageMessage()
        {
            DbPath = System.IO.Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), dbName);
            var platform = new SQLite.Net.Platform.XamarinAndroid.SQLitePlatformAndroid();
            db = new SQLiteConnection(platform, DbPath);
            db.CreateTable<AppDB>();
            db.CreateTable<AttachmentAppDB>();
            db.CreateTable<ProFileDB>();
            db.CreateTable<APPSetting>();

        }

بعد هم اینکه این کد در نسخه های قبل از 7 کار میکنه

این خطا رو هم اول لود برنامه میده و بعد هم مشکلی نداره . دیتابیس درست میشه و میشه با اون کار کرد

اگه دسترسی خاصی باید بدم بفرمایید چه دسترسی هست؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • دوشنبه 7 اسفند 1396
  • 18:42

اجازه بدید من تست کنم روی نسخه 7 اگر با همین مشکل روبرو شدم پیگیری میکنم

کاربر سایت

alireza742

عضویت از 1395/06/29

  • چهارشنبه 9 اسفند 1396
  • 13:15

سلام

من این مشکل رو با یه dll دیگه حل کردم

باید از sqlite-net-pcl و SQLitePcl.raw  استفاده کنید فقط چند تا نکته داره اینکه باید اون dll قبلی رو uninstall کنید از طریق nuGet و اینکه تو بخش لینکر باید SQLite-net;SQLitePCLRaw.batteries_v2;SQLitePCLRaw.core را تو skip linking assemblies وارد کنید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)