java.lang.IllegalStateException: কেবলমাত্র পূর্ণস্ক্রিন অস্বচ্ছ ক্রিয়াকলাপগুলি ওরিয়েন্টেশনের জন্য অনুরোধ করতে পারে


187

অ্যান্ড্রয়েড 8.0 ওরিও জাভা.লং.র যোগাযোগের বই থেকে পরিচিতিগুলি পুনরুদ্ধার করার সময় আমি সমস্যার মুখোমুখি হয়েছি l অবৈধ স্ট্যাটেস্ট এক্সেপশন: কেবলমাত্র পূর্ণস্ক্রিন অস্বচ্ছ ক্রিয়াকলাপগুলি ওরিয়েন্টেশনের জন্য অনুরোধ করতে পারে

আমি ফোন কন্টাক্ট বই থেকে আমার ক্রিয়াকলাপে যোগাযোগের চেষ্টা করার চেষ্টা করছি এবং এটি ললিপপ, মার্শমালো, নওগাট ইত্যাদির জন্য নিখুঁত কাজ করে তবে ওরিওর জন্য এটি আমাকে ত্রুটি দেয় এটি দয়া করে আমাকে সহায়তা করুন। আমার কোডটি এখানে নীচে।

ডেমো কোড: -

private void loadContacts() {
            contactAsync = new ContactLoaderAsync();
            contactAsync.execute();
        }

        private class ContactLoaderAsync extends AsyncTask<Void, Void, Void> {
            private Cursor numCursor;

            @Override
            protected void onPreExecute() {
                super.onPreExecute();
                Uri numContacts = ContactsContract.CommonDataKinds.Phone.CONTENT_URI;
                String[] numProjection = new String[]{ContactsContract.CommonDataKinds.Phone.CONTACT_ID, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, ContactsContract.CommonDataKinds.Phone.NUMBER, ContactsContract.CommonDataKinds.Phone.TYPE};
                if (android.os.Build.VERSION.SDK_INT < 11) {
                    numCursor = InviteByContactActivity.this.managedQuery(numContacts, numProjection, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " COLLATE NOCASE ASC");
                } else {
                    CursorLoader cursorLoader = new CursorLoader(InviteByContactActivity.this, numContacts, numProjection, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " COLLATE NOCASE ASC");
                    numCursor = cursorLoader.loadInBackground();
                }

            }

            @Override
            protected Void doInBackground(Void... params) {
                if (numCursor.moveToFirst()) {
                    try {
                        final int contactIdIndex = numCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.CONTACT_ID);
                        final int displayNameIndex = numCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME);
                        final int numberIndex = numCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
                        final int typeIndex = numCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.TYPE);
                        String displayName, number, type;
                        do {
                            displayName = numCursor.getString(displayNameIndex);
                            number = numCursor.getString(numberIndex);
                            type = getContactTypeString(numCursor.getString(typeIndex), true);
                            final ContactModel contact = new ContactModel(displayName, type, number);
                            phoneNumber = number.replaceAll(" ", "").replaceAll("\\(", "").replaceAll("\\)", "").replaceAll("-", "");

                            if (phoneNumber != null || displayName != null) {
                                contacts.add(phoneNumber);
                                contactsName.add(displayName);
                                contactsChecked.add(false);

                                filterdNames.add(phoneNumber);
                                filterdContactNames.add(displayName);
                                filterdCheckedNames.add(false);
                            }
                        } while (numCursor.moveToNext());
                    } finally {
                        numCursor.close();
                    }
                }


                Collections.sort(contacts, new Comparator<String>() {
                    @Override
                    public int compare(String lhs, String rhs) {
                        return lhs.compareToIgnoreCase(rhs);
                    }
                });

                InviteByContactActivity.this.runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        mContactAdapter.notifyDataSetChanged();
                    }
                });

                return null;
            }
        }

        private String getContactTypeString(String typeNum, boolean isPhone) {
            String type = PHONE_TYPES.get(typeNum);
            if (type == null)
                return "other";
            return type;
        }

        static HashMap<String, String> PHONE_TYPES = new HashMap<String, String>();

        static {
            PHONE_TYPES.put(ContactsContract.CommonDataKinds.Phone.TYPE_HOME + "", "home");
            PHONE_TYPES.put(ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE + "", "mobile");
            PHONE_TYPES.put(ContactsContract.CommonDataKinds.Phone.TYPE_WORK + "", "work");
        }
}

ত্রুটি লগ:-

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example, PID: 6573
                                                             java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example/com.example.Activity.InviteByContactActivity}: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
                                                              Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation

: এই পরীক্ষা করুন stackoverflow.com/questions/6745797/...
yash786


: এই পরীক্ষা হিসাবে ভাল stackoverflow.com/questions/46980697/...
yash786

1
সমস্ত পরামর্শ দেওয়ার চেষ্টা করেও কেউ আমার পক্ষে কাজ করে না।
শুভম সেজপাল

1
আপনি কি অ্যান্ড্রয়েড ব্যবহার করছেন: স্ক্রিন ওরিয়েন্টেশন = ম্যানিফেস্টে "প্রতিকৃতি"?
রাগেশ রমেশ

উত্তর:


62

সমস্যাটি মনে হচ্ছে যখন আপনার টার্গেটের এসডিকে 28 হয় So তাই অনেকগুলি বিকল্প চেষ্টা করার পরে অবশেষে এটি কাজ করেছিল।

<activity
            android:name=".activities.FilterActivity"
            android:theme="@style/Transparent"
            android:windowSoftInputMode="stateHidden|adjustResize" />

শৈলী: -

<style name="Transparent" parent="Theme.AppCompat.Light.NoActionBar">
     <item name="android:windowIsTranslucent">true</item>
     <item name="android:windowBackground">@android:color/transparent</item>
     <item name="android:windowIsFloating">true</item>
     <item name="android:windowContentOverlay">@null</item>
     <item name="android:windowNoTitle">true</item>
     <item name="android:backgroundDimEnabled">false</item>
 </style>

দ্রষ্টব্য: প্যারেন্ট = "থিম.এপকম্প্যাট.লাইট.নো অ্যাকশনবার" এপিআই 28-র জন্য প্রয়োজনীয় Previous সম্পাদনা: কারও কারও জন্য কেবলমাত্র কাজ করে সেট করা <item name="android:windowIsTranslucent">false</item> and <item name="android:windowIsFloating">false</item> M সমাধানটি আপনি যেভাবে কার্যকর করেন তা নির্ভর করে ay আমার ক্ষেত্রে এটি সত্যকে সেট করে কাজ করেছে।


22
যে কেউ এই "ফিক্স" এর পিছনে হোঁচট খায় আমাকে সেট করতে হয়েছিল <item name="android:windowIsTranslucent">false</item>এবং <item name="android:windowIsFloating">false</item>এটি কাজ করার আগে সেটও করতে হয়েছিল।
th317erd

8
এর সমাধান কোথায়? ট্যাগটিতে কোনও screenOrientationঅ্যাট্রিবিউট নেই activityএবং সত্যটি সেট করা screenOrientationঅবস্থায় একমাত্র জিনিসটি ক্র্যাশ হওয়ার কারণ সেট করা হচ্ছে android:windowIsTranslucent
অ্যান্ড্রয়েড বিকাশকারী

উপরের মন্তব্যগুলি ব্যবহার না করা হলে এটি কাজ করে না। রাদেশের উত্তর দেখুন, যা উপরের মন্তব্যগুলি এবং আরও কিছুকে কভার করে এবং স্পষ্ট
আর্গবার

আমার জন্য মিথ্যা কাজের জন্য স্বতন্ত্র স্থান নির্ধারণ <আইটেমের নাম = "অ্যান্ড্রয়েড: উইন্ডোজআই ট্রান্সলুসেন্ট"> মিথ্যা </item>
ট্রান কোয়ান

আমার ক্ষেত্রে, সমাধানটি ছিল AndroidManLive.xML এর ক্রিয়াকলাপ থেকে 'android: থিম' সরিয়ে ফেলা। তবে আপনার যদি এটির প্রয়োজন হয় তবে আপনি এটিকে 'সুপার.অনক্রিট' এর আগে প্রোগ্রামগতভাবে যুক্ত করতে পারেন: সেট থেম (আর। স্টাইল। থিম_ অ্যাপকম্প্যাট_লাইট_ডায়ালগ);
পাভেল কাতায়কিন

132

অ্যান্ড্রয়েড ওরিওতে (এপিআই 26) আপনি স্টাইলের নীচে লাইন (গুলি) এর ক্রিয়াকলাপের জন্য ওরিয়েন্টেশন পরিবর্তন করতে পারবেন না

 <item name="android:windowIsTranslucent">true</item>

অথবা

 <item name="android:windowIsFloating">true</item>

এটি সমাধান করার আপনার কাছে বেশ কয়েকটি উপায় রয়েছে:

1) আপনি কেবল উপরের লাইনগুলি সরিয়ে ফেলতে পারেন (বা এটি মিথ্যাতে পরিণত করতে পারেন ) এবং আপনার অ্যাপ্লিকেশনটি ভাল কাজ করে।

2) অথবা আপনি সেই ক্রিয়াকলাপের জন্য প্রথমে ম্যানিফেস্ট থেকে নীচের লাইনটি সরাতে পারেন

android:screenOrientation="portrait"

তারপরে আপনাকে অবশ্যই এই ক্রিয়াকলাপটি আপনার ক্রিয়াকলাপে যুক্ত করতে হবে (অনক্রিট () এ)

    //android O fix bug orientation
    if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    }

3) আপনি নতুন তৈরি করতে পারেন styles.xmlমধ্যে values-v26ফোল্ডার এবং আপনার এই যোগ style.xml। ( আবদেলহাদির মন্তব্যে ধন্যবাদ )

 <item name="android:windowIsTranslucent">false</item>
 <item name="android:windowIsFloating">false</item>

25
Android PIE এ এটি প্রত্যাশার মতো কাজ করে। সুতরাং চেকটি সত্যই হওয়া উচিত:android.os.Build.VERSION.SDK_INT != Build.VERSION_CODES.O
এনট্রেকো

@ অ্যাভিস্পার আপনি দয়া করে পুরো শর্তের কোডটি ভাগ করে নিতে পারেন
মানিকান্দন কে

একটি ডিভাইস / এমুলেটর চলমান এপিআই 26 তে, বিকল্প 2 কাজ করে না, আমাকে কেবলমাত্র সেই এপিআইয়ের অক্ষম করতে একটি নতুন তৈরি করতে styles.xmlহয়েছিল । values-v26android:windowIsTranslucent
আবদেলহাদি

@ অ্যাডেলহ্যাডি ভাল সমাধান, আমি আমার উত্তরে এটি যুক্ত করব তবে আপনার কোডটি পরীক্ষা করে দেখতে হবে এবং কেন বিকল্প 2 কার্যকর হয় না, আমার প্রস্তাবিত বিকল্পটি,
রাদেশ

1
আমি বুলিয়ান মান সহ 3 বিকল্পটি ব্যবহার করেছি <bool name="allowWindowFullScreenTranslucent">true</bool>এবং এটিতে উল্লেখ করেছি <item name="android:windowIsTranslucent">@bool/allowWindowFullScreenTranslucent</item>। তারপরে স্টাইলস.এক্সএমএলে মান-v26 এর আওতায় এটি মানগুলিতে সেট করে falseএবং মানগুলি - v27 এ সেট করে true
ডিসারসন

86

অ্যান্ড্রয়েড ও এবং পরে এই ত্রুটিটি আপনি সেট করার পরে ঘটে

 android:screenOrientation="portrait"

ম্যানিফেস্টে।

সেই লাইনটি সরান এবং ব্যবহার করুন

 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

আপনার ক্রিয়াকলাপে

এটি আপনার সমস্যার সমাধান করবে।


7
এটি গুগল দিক থেকে একটি বাগ। ভবিষ্যতের আপডেটগুলিতে স্থির করা উচিত। setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); আপনার অ্যাপ্লিকেশনটি ল্যান্ডস্কেপে যেতে বাধা দেবে। আপনার সমস্ত ক্রিয়াকলাপ তৈরিতে আপনি এটি ব্যবহার করেছেন তা নিশ্চিত করুন।
রাগেশ রমেশ

44
সরানো হচ্ছে <item name="android:windowIsTranslucent">true</item> আমার স্টাইল থেকে উত্তরাধিকারী যে Theme.AppCompat.Light.NoActionBar আমার জন্য কাজ করেন।
শ্যাডোশিপ

16
এই সমাধানটি কাজ করে, তবে এটি আমার স্প্ল্যাশস্ক্রিন থেমটিকে বিভ্রান্ত করে। ঘন ঘন
opালু

3
পূর্ববর্তী সংস্করণগুলিতে কাজ করা অ্যাপ্লিকেশনগুলি ভাঙ্গতে "উদ্দিষ্ট"? সেই লক্ষ্যটি অবশ্যই পাওয়া গেছে। কমপক্ষে আমাদের কাছে একটি সমাধান রয়েছে, @ রাগেশকে ধন্যবাদ
ওলেগ গ্রাইব

9
ক্রিয়াকলাপ শ্রেণিতে ওরিয়েন্টেশন সেট করে ম্যানিফেস্টের বৈশিষ্ট্যটি প্রতিস্থাপন করা সমস্যার সমাধান করে না।
rmgoncalo

75

গুগল ক্রিয়াকলাপে এই ব্যতিক্রম ছুঁড়ে দেয় onCreate v27 পরে পদ্ধতিতে , এর অর্থ হ'ল: যদি কোনও ক্রিয়াকলাপটি স্বচ্ছ বা ভাসমান হয় তবে এর অভিমুখটি পিতামাতার (ব্যাকগ্রাউন্ড) ক্রিয়াকলাপের উপর নির্ভর করা উচিত, নিজেই সিদ্ধান্ত নিতে পারে না।

এমনকি যদি আপনি সরান android:screenOrientation="portrait" ভাসমান বা স্বচ্ছ ক্রিয়াকলাপ থেকে ফেলে থাকেন তবে এর পিতামাতার (ব্যাকগ্রাউন্ড) ক্রিয়াকলাপের উপর ওরিয়েন্টেশনটি ঠিক করেন, এটি এখনও পিতামাতার দ্বারা স্থির করা হয়েছে, আমি ইতিমধ্যে পরীক্ষা করেছি।

একটি বিশেষ পরিস্থিতি: আপনি যদি কোনও প্রবর্তক ক্রিয়াকলাপে স্বচ্ছ রূপান্তর করেন তবে এর পিতামাতার (পটভূমি) নেই, তাই সর্বদা ডিভাইস দিয়ে ঘোরান। এটি ঠিক করতে চান, <item name="android:windowIsTranslucent">true</item>শৈলী প্রতিস্থাপনের জন্য আপনাকে আরও একটি উপায় অবলম্বন করতে হবে ।


2
আমার ওয়ানপ্লাসে চলমান অ্যান্ড্রয়েড পিআইইতে আমার এই সমস্যাটি নেই। সুতরাং এটি v27 এর পরে নয়, তবে v! = 28
এন্টারিকো

আপনি কি এর জন্য ডকুমেন্টেশনের লিঙ্কটি পেয়েছেন? আমি এটি খুঁজে পেতে পারে না।
শিবাম ভার্মা

আড়াআড়ি সমস্যাটি সত্যই পাগল, ধন্যবাদ, এটি আমার সমস্যার সমাধান করে
অভিষেক গার্গ

গত বিভাগটি 'একটি বিশেষ পরিস্থিতি ...'
guy লোক_ম

এটি গ্রহণযোগ্য উত্তর হওয়া উচিত। নিখুঁত জ্ঞান তোলে!
stoefln

28

আপনি যদি একটি পূর্ণস্ক্রিন স্বচ্ছ ক্রিয়াকলাপ ব্যবহার করেন তবে ক্রিয়াকলাপের ওরিয়েন্টেশন লকটি নির্দিষ্ট করার দরকার নেই। এটি পিতামাতার ক্রিয়াকলাপের কনফিগারেশন সেটিংস গ্রহণ করবে। সুতরাং যদি পিতামাতার ক্রিয়াকলাপ ম্যানিফেস্টে থাকে:

অ্যান্ড্রয়েড screenOrientation = "প্রতিকৃতি"

আপনার স্বচ্ছ ক্রিয়াকলাপে একই ওরিয়েন্টেশন লক থাকবে: প্রতিকৃতি।


আমি মনে করি আপনি একটি ছোট টাইপ করেছেন: "যদি আপনি একটি পূর্ণস্ক্রিন ট্রান্সলুসেন্ট ক্রিয়াকলাপটি ব্যবহার করেন তবে এটি অবশ্যই তার পিতামাতার ক্রিয়াকলাপের কনফিগারেশন সেটিংস গ্রহণ করবে" ^^
জোসেলিন

2
আমার স্বচ্ছ ক্রিয়াকলাপটি যদি আমার লঞ্চের ক্রিয়াকলাপ হয় (তবে স্প্ল্যাশ স্ক্রিন)
ভূপেশ

2
এটি কি সমস্ত অ্যান্ড্রয়েড সংস্করণগুলির জন্য সত্য? নাকি এটি কেবল অ্যান্ড্রয়েড হে এবং উপরের দিকে?
abhiank

এটি ব্যবহার করা হচ্ছে না তবে এটি কাজ করবে না (উদাহরণস্বরূপ: কোনও পরিষেবা থেকে এটি শুরু করা)
অ্যান্ড্রয়েড বিকাশকারী

24

আমি android:screenOrientation="behind"পরিবর্তে ব্যবহার android:screenOrientation="portrait"। মূলত, আপনি একটি কথোপকথন তৈরি করেছেন (কোনও ক্রিয়াকলাপে) এবং ডায়লগ নিজেই এটির জন্য অভিভাবকত্বের অনুরোধ করতে পারে না (কারণ পিতামাতার ব্যাকগ্রাউন্ডে দৃশ্যমান এবং নিজস্ব বিন্যাস রয়েছে)।

"পিছনে" ক্রিয়াকলাপের স্ট্যাকে তত্ক্ষণাত তার নীচে যে ক্রিয়াকলাপ রয়েছে তেমনই ওরিয়েন্টেশন।


আমি যদি বর্তমান ক্রিয়াকলাপের পাশাপাশি থাকাকালীন (অন্যান্য অ্যাপ্লিকেশন সহ) এর নীচে কী রয়েছে তা দেখিয়ে আমি যে ক্রিয়াকলাপটি তৈরি করেছি তা স্বচ্ছ হতে চাই? যদি আমি এটি "পিছনে" থাকতে দিই তবে এটি এখনও বিভিন্ন ক্ষেত্রে অভিমুখ পরিবর্তন করতে পারে ...
অ্যান্ড্রয়েড বিকাশকারী

19

একমাত্র সমাধান যা সত্যই কাজ করে:

পরিবর্তন:

<item name="android:windowIsTranslucent">true</item>

প্রতি:

<item name="android:windowIsTranslucent">false</item>

স্টাইল.এক্সএমএল এ

তবে এটি আপনার স্প্ল্যাশস্ক্রিনে (প্রারম্ভকালে সাদা স্ক্রিন) সমস্যা তৈরি করতে পারে ... এক্ষেত্রে আপনার স্টাইলগুলিতে নিম্নলিখিত লাইনটি যুক্ত করুন। এক্সএমএল:

 <item name="android:windowDisablePreview">true</item> 

উইন্ডোজ ট্রান্সলুসেন্ট লাইনের ঠিক নীচে।

পূর্ববর্তী টিপস যদি কাজ না করে তবে শেষ সুযোগ: এসডিকে 26 এর পরিবর্তে ও 27 লক্ষ্য করুন।


1
লক্ষ্য এসডিকে ২ 27 এর পরিবর্তে ২ to এ পরিবর্তন করা আমার পক্ষে কাজ করেছিল। উইন্ডো পরিবর্তন করা হয়েছে ট্রান্সলুসেন্ট না।
ক্লিশ 818

এটি আমার জন্য টার্গেট এসডিকে: ২ 27 ব্যবহার করে কাজ করেছে specially এটি বিশেষভাবে গুরুত্বপূর্ণ কারণ আমার একটি স্প্ল্যাশস্ক্রিন কনফিগার করা আছে।
লিওনার্দো জি।

18

যদি ব্যবহার করতে হয় setRequestedOrientation() হয় তবে অ্যান্ড্রয়েড 8.0 এ উইন্ডোজআইএস ট্রান্সলুসেন্ট অ্যাট্রিবিউট ত্যাগ ছাড়া উপায় নেই

values\styles.xml এপিআই স্তরের 25- (<8.0)

<style name="Base.Theme.DesignDemo" parent="Base.Theme.AppCompat.Light">
        ...
        <item name="android:windowIsTranslucent">true</item>
        ...
    </style>

values-v26\styles.xml এপিআই স্তরের 26 (= 8.0) এর জন্য

<style name="Base.Theme.DesignDemo" parent="Base.Theme.AppCompat.Light">
    ...
    <!-- android 8.0(api26),Only fullscreen opaque activities can request orientation -->
    <item name="android:windowIsTranslucent">false</item>
    ...
</style>

values-v27\styles.xml এপিআই স্তরের জন্য 27+ (> 8.0)

<style name="Base.Theme.DesignDemo" parent="Base.Theme.AppCompat.Light">
    ...
    <item name="android:windowIsTranslucent">true</item>
    ...
</style>

14

অনেক লোক একটি সমাধান দিয়েছেন, তাই আমি সমস্যার উত্স সম্পর্কে কথা বলব।

ব্যতিক্রম লগ অনুসারে

Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
    at android.app.Activity.onCreate(Activity.java:1081)
    at android.support.v4.app.SupportActivity.onCreate(SupportActivity.java:66)
    at android.support.v4.app.FragmentActivity.onCreate(FragmentActivity.java:297)
    at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:84)
    at com.nut.blehunter.ui.DialogContainerActivity.onCreate(DialogContainerActivity.java:43)
    at android.app.Activity.performCreate(Activity.java:7372)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1218)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3147)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3302) 
    at android.app.ActivityThread.-wrap12(Unknown Source:0) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1891) 
    at android.os.Handler.dispatchMessage(Handler.java:108) 
    at android.os.Looper.loop(Looper.java:166)

ক্রিয়াকলাপ.জভাতে ব্যতিক্রমটি কার্যকর করা কোড

    //Need to pay attention mActivityInfo.isFixedOrientation() and ActivityInfo.isTranslucentOrFloating(ta)
    if (getApplicationInfo().targetSdkVersion >= O_MR1 && mActivityInfo.isFixedOrientation()) {
        final TypedArray ta = obtainStyledAttributes(com.android.internal.R.styleable.Window);
        final boolean isTranslucentOrFloating = ActivityInfo.isTranslucentOrFloating(ta);
        ta.recycle();

        //Exception occurred
        if (isTranslucentOrFloating) {
            throw new IllegalStateException(
                    "Only fullscreen opaque activities can request orientation");
        }
    }

mActivityInfo.isFixedOrientation ():

        /**
        * Returns true if the activity's orientation is fixed.
        * @hide
        */
        public boolean isFixedOrientation() {
            return isFixedOrientationLandscape() || isFixedOrientationPortrait()
                    || screenOrientation == SCREEN_ORIENTATION_LOCKED;
        }
        /**
        * Returns true if the activity's orientation is fixed to portrait.
        * @hide
        */
        boolean isFixedOrientationPortrait() {
            return isFixedOrientationPortrait(screenOrientation);
        }

        /**
        * Returns true if the activity's orientation is fixed to portrait.
        * @hide
        */
        public static boolean isFixedOrientationPortrait(@ScreenOrientation int orientation) {
            return orientation == SCREEN_ORIENTATION_PORTRAIT
                    || orientation == SCREEN_ORIENTATION_SENSOR_PORTRAIT
                    || orientation == SCREEN_ORIENTATION_REVERSE_PORTRAIT
                    || orientation == SCREEN_ORIENTATION_USER_PORTRAIT;
        }

        /**
        * Determines whether the {@link Activity} is considered translucent or floating.
        * @hide
        */
        public static boolean isTranslucentOrFloating(TypedArray attributes) {
            final boolean isTranslucent = attributes.getBoolean(com.android.internal.R.styleable.Window_windowIsTranslucent, false);
            final boolean isSwipeToDismiss = !attributes.hasValue(com.android.internal.R.styleable.Window_windowIsTranslucent)
                                            && attributes.getBoolean(com.android.internal.R.styleable.Window_windowSwipeToDismiss, false);
            final boolean isFloating = attributes.getBoolean(com.android.internal.R.styleable.Window_windowIsFloating, false);
            return isFloating || isTranslucent || isSwipeToDismiss;
        }

উপরের কোড বিশ্লেষণ অনুসারে, যখন TargetSdkVersion> = 27, যখন SCREEN_ORIENTATION_landSCAPE, SCREEN_ORIENTATION_PORTRAIT, এবং অন্যান্য সম্পর্কিত বৈশিষ্ট্যগুলি ব্যবহার করা হয় তখন উইন্ডোজস ট্রান্সলুসেন্ট, উইন্ডোজআইফ্লোটিং, এবং উইন্ডোসুইপটোজিজম বিষয় বৈশিষ্ট্যগুলি একটি ব্যতিক্রম ঘটায়।

সমস্যাটি সন্ধান করার পরে, আপনি টার্গেটস্পটক সংস্করণ পরিবর্তন করতে পারেন বা আপনার প্রয়োজন অনুসারে থিমের সম্পর্কিত বৈশিষ্ট্যগুলি মুছে ফেলতে পারেন।


1
এই মুহুর্তে মাস্টারে কোডটি পরীক্ষা করা হচ্ছে, এটি ইতিমধ্যে কাঠামো থেকে সরানো হয়েছে: মিরর / প্ল্যাটফর্ম_ফ্রেমওয়ার্কস_বেস / কমিট / e83f34cde79c51efb66f31f2770c2e8e572e96db # ডিফ-এ -9a0352703240c8ae70f1c83add4bc8 এই বার্তাটি দেখতে আকর্ষণীয়।
এরিক এম স্প্রেঞ্জেল

আপনি কি এই অংশের উত্স কোডের একটি লিঙ্ক প্রদর্শন করতে পারেন? এমন কোনও কর্মপদ্ধতি আছে যা আমাকে নির্দিষ্ট ওরিয়েন্টেশন সহ একটি ক্রিয়াকলাপ করতে দেয় এবং স্বচ্ছ পটভূমি পেতে দেয়, যাতে এর পিছনে (অন্যান্য অ্যাপ্লিকেশন সহ) কী আছে তা দেখা সম্ভব হবে?
অ্যান্ড্রয়েড বিকাশকারী

8

আমি সর্বাধিক রেট দেওয়া উত্তরে একমত হতে পারি না, কারণ

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

একটি ত্রুটি ঘটায়

java.lang.IllegalStateException: কেবলমাত্র পূর্ণস্ক্রিন অস্বচ্ছ ক্রিয়াকলাপগুলি ওরিয়েন্টেশনের জন্য অনুরোধ করতে পারে

তবে এটি আমার পক্ষে কাজ করে

<style name="TranslucentTheme" parent="@style/Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

এবং আপনি যখন প্রসারিত করেন তখন এটি আপনার কার্যকলাপের জন্য ব্যবহার করুন

InterstitialActivity extends AppCompatActivity

AndroidManLive.xML এ

    <activity
        android:name=".InterstitialActivity"
        ...
        android:screenOrientation="portrait"
        android:theme="@style/TranslucentTheme" />

<আইটেমের নাম = "অ্যান্ড্রয়েড: উইন্ডোজআইট্রান্সলুসেন্ট"> ভুয়া </ i> << আইটেম নাম = "অ্যান্ড্রয়েড: উইন্ডো ফুলস্ক্রিন"> সত্য </ i> <> এটি আমার জন্য এন্ড্রয়েড 8.0 এ স্থির করেছে। আমি এখনও ম্যানিফেস্টে স্ক্রিন ওরিয়েন্টেশন ছেড়ে যেতে পারতাম।
ফ্রাঙ্ক

1
এটি উইন্ডোজআইট্রান্সলুসেন্টের মতো কাজ করে না, কারণ এখন আপনি কার্যকলাপের পিছনে কী দেখতে পাচ্ছেন না।
অ্যান্ড্রয়েড বিকাশকারী

8

কেবল এই লাইনটি সরিয়ে দিন android:screenOrientation="portrait" Manifiest.xml এ ক্রিয়াকলাপের

সেই ক্রিয়াকলাপটি এর আগের ক্রিয়াকলাপ থেকে ওরিয়েন্টেশন পাবে তাই যার ওরিয়েন্টেশন প্রয়োগ করার দরকার নেই <item name="android:windowIsTranslucent">true</item>


পূর্ববর্তী ক্রিয়াকলাপের বর্তমান ক্রিয়াকলাপে আপনি যা চান তার চেয়ে আলাদা মনোভাব থাকলে কী হবে?
ClassA

6

টার্গেট এসডিকে পাই (এপিআই লেভেল ২৮.০) হয় এবং উইন্ডোটি ট্রান্সলুসেন্ট সত্য হয় বলে মনে হয়

<item name="android:windowIsTranslucent">true</item>

এবং আপনি ওরিয়েন্টেশন অ্যাক্সেস করার চেষ্টা করুন। সমস্যাটি অ্যান্ড্রয়েড ওরিও 8.0 এর সাথে আসে (এপিআই স্তর 26) এটি সমাধানের দুটি উপায় রয়েছে

  1. ওরিয়েন্টেশন সরান
  2. অথবা উইন্ডোজআইট্রান্সলুসেন্টকে মিথ্যাতে সেট করুন

আপনি যদি এর মতো ম্যানিফেস্টে ওরিয়েন্টেশন সেট করে থাকেন

android:screenOrientation="portrait"

বা এই জাতীয় ক্রিয়াকলাপ শ্রেণিতে

 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

উভয় জায়গা ফর্ম সরান।

এবং আপনি যখন উইন্ডোটি ট্রান্সলুসেন্টকে সত্যে সেট করেন তা পর্যবেক্ষণ করে, এটি পিতামাতার ক্রিয়াকলাপ থেকে অভিমুখীকরণ নেয়।


5

ম্যানিফেস্ট ফাইলটিতে দ্বিতীয় ক্রিয়াকলাপের প্যারেন্টঅ্যাক্টিভিটি নামটিকে প্রথম ক্রিয়াকলাপ হিসাবে সেট করে এবং দ্বিতীয় ক্রিয়াকলাপের স্ক্রিনঅরেন্টেশন প্যারামিটারটি সরিয়ে দেয়। এর অর্থ হল আপনার প্রথম ক্রিয়াকলাপটি পিতামাতার এবং আপনার দ্বিতীয় ক্রিয়াকলাপের দিকে পরিচালিত করার সিদ্ধান্ত নিয়েছে।

<activity
        android:name=".view.FirstActiviy"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme" />

<activity
        android:name=".view.SecondActivity"
        android:parentActivityName=".view.FirstActiviy"
        android:theme="@style/AppTheme.Transparent" />

5

ম্যানিফিয়েস্ট.এক্সএমএল-এ কেবলমাত্র কার্যকলাপের ওরিয়েন্টেশন সেট করুন

android:screenOrientation="unspecified"

বা প্রতিকৃতি ওরিয়েন্টেশন সীমাবদ্ধ জন্য

উদাহরণস্বরূপ আপনি ক্রিয়াকলাপে, onCreateপদ্ধতি পদ্ধতিতে কল করতে পারেনsuper.onCreate(...)

@Override
    protected void onCreate(Bundle savedInstanceState) {
        setOrientation(this);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.your_xml_layout);
        //...
        //...
}

// Method 
public static void setOrientation(Activity context) {
   if (android.os.Build.VERSION.SDK_INT == Build.VERSION_CODES.O)
        context.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
      else
        context.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

4

আমারও একই সমস্যা ছিল এবং আমার সমাধানটি ছিল লাইনটি সরিয়ে দেওয়া

android:screenOrientation="portrait"

এবং তারপরে এটি ক্রিয়াকলাপে যুক্ত করুন:

if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

1
স্ট্যাক ওভারফ্লোতে ইংরেজি ব্যবহার করুন। ধন্যবাদ!
মাইকেল ম্যাইইয়ার্স

3

কিছু গবেষণা করার পরে, মনে হয় এই সমস্যাটি গুগল বাগের কারণে হতে পারে। আমার জন্য, আমি আমার ক্রিয়াকলাপের ক্রিয়্যাট পদ্ধতিতে এই লাইনটি ছেড়ে দিতে সক্ষম হয়েছি:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

এবং আমি আমার টার্গেট এসডিকে ভার্সনকে ২ 26 এ পরিবর্তন করেছি my আমার অনকারেটিতে সেই লাইনটি থাকা সত্ত্বেও ক্র্যাশ ঘটেছিল যখন আমার টার্গেটএসডিভি ভার্সনটি এখনও ২ at-এ স্থির ছিল Since যেহেতু অন্য কারও সমাধান আমার পক্ষে এখনও পর্যন্ত কাজ করে নি, আমি আবিষ্কার করেছি যে এটি অস্থায়ী স্থির হিসাবে কাজ করে এখন।


1
এই এক 26 থেকে targetSdkVersion সেটিং দ্বারা আমার জন্য কাজ, Android: screenOrientation = "প্রতিকৃতি" এবং <আইটেমের নাম = "অ্যান্ড্রয়েড windowIsTranslucent"> সত্য </ আইটেমটি>
siripan

@ সিরিপান আমার জন্যও
পিট্টা

তবে শেষ পর্যন্ত আপনাকে এই বছর টার্গেটএসডিপি ভার্সনটি 28 এ সেট করতে হবে: support.google.com/googleplay/android-developer/answer/… । তুমি কি করবে?
অ্যান্ড্রয়েড বিকাশকারী

3

অ্যান্ড্রয়েড সংস্করণ 7 (এপি স্তরের 24,25) এবং 8 (এপিআই স্তরের 26,27) ইন থিমগুলির ভিতরে থিমগুলির মধ্যে বিরোধ (বাগ) হয়, যখন আপনার থাকে

android:screenOrientation="portrait" : AndroidManLive.xML এ সুনির্দিষ্ট ক্রিয়াকলাপের (যে ক্রাশ হয়) inside

&

<item name="android:windowIsTranslucent">true</item> 

থিমটিতে যে স্টাইল.এক্সএমএল এর ভিতরে সেই ক্রিয়াকলাপটি প্রয়োগ হয়েছিল

এটি আপনার প্রয়োজন অনুযায়ী এই উপায়ে সমাধান করা যেতে পারে:

1- দ্বন্দ্ব তৈরি করে যে উল্লিখিত বৈশিষ্ট্যগুলি থেকে সরান

2- আপনার প্রয়োজন অনুসারে এই মানগুলির একটিতে ক্রিয়াকলাপের দৃষ্টিভঙ্গি পরিবর্তন করুন: unspecifiedবা আরও behindঅনেক কিছু এখানে পাওয়া যাবে: অ্যান্ড্রয়েডের জন্য গুগল রেফারেন্স: স্ক্রিন ওরিয়েন্টেশন `

3- ওরিয়েন্টেশনটি প্রোগ্রামের সময়টি রান টাইমে সেট করুন


এই সমাধানটি চেষ্টা করে দেখুন, তবে অ্যাপ্লিকেশনটি এখনও ক্র্যাশ করেছে: আমার প্রতিকৃতি স্বচ্ছ ক্রিয়াকলাপের প্রয়োজন তাই আমার এই দুটি বিকল্পের প্রয়োজন। ম্যানিফেস্ট স্ক্রিনে সেট করার চেষ্টা করেছেন ওরিয়েন্টেশন অনির্দিষ্ট, কিন্তু ভাগ্য নেই।
আনবার

না I শুধুমাত্র 1 ডিভাইসে - 9 লাইট সম্মান করুন। স্যামসুঙে এটি ঠিক আছে।
আনবার

ওরিয়েন্টেশন প্রোগ্রামটিমেটিক সেট করা ক্রাশের কারণও হয়। আপনি কিভাবে এটি সঠিকভাবে ব্যবহার করেছেন?
অ্যান্ড্রয়েড বিকাশকারী

@ অ্যান্ড্রয়েড ডেভেলপার আমি কীভাবে আপনার উত্স কোডটি অ্যাক্সেস করতে পারি ?! আমি অবশ্যই আপনাকে দেখেছি
হামেদ জলিলিয়ানী

@HamedJaliliani এটা programmaticaly সেট যেমন, উদাহরণস্বরূপ: `setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);`
Android বিকাশকারী

3

আমি সম্প্রতি সমস্যার মুখোমুখি হয়েছি এবং সমাধানটি এখানে here

আপনি অ্যান্ড্রয়েড ম্যানিফেস্ট ফাইলটিতে সেট করেছেন এমন স্ক্রিন ওরিয়েন্টেশন প্যারামিটার পরিবর্তন করার দরকার নেই।

এর মধ্যে দুটি ফোল্ডার যুক্ত করুন

res>values
as  res>values-v26 
and res>values-v27

তারপরে সেখানে আপনার স্টাইলস.এক্সএমএল এবং থিমস.এক্সএমএল ফাইলটি অনুলিপি করুন।

এবং নিম্নলিখিত প্যারামিটারগুলি সত্য থেকে মিথ্যাতে পরিবর্তন করুন।

<item name="android:windowIsTranslucent">true</item>

<item name="android:windowIsTranslucent">false</item>

এটা কাজ করবে।

অ্যান্ড্রয়েড 8.0 এর একটি সাধারণ বাগ


2

আমি কেবল এসডিকে 26 (8.0.0) এ এই উইন্ডোজটি ট্রান্সলুসেন্ট 'ট্রুথলুসেন্ট' ট্রুথলুসেন্ট 'ট্রু' ব্যবহার করে এবং জোর করে ওরিয়েন্টেশন সেট করার ক্ষেত্রে এই সমস্যার মুখোমুখি হয়েছি:

সমাধান এখানে:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_splash);   

        // fixing portrait mode problem for SDK 26 if using windowIsTranslucent = true
        if (Build.VERSION.SDK_INT == 26) {
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
        } else {
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        }        
    }



       <style name="SplashActivty" parent="AppTheme">
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowNoTitle">true</item>
    </style>



<!-- Splash screen -->
        <activity
            android:name="edu.aku.family_hifazat.activities.SplashActivity"
            android:label="@string/app_name"
            android:screenOrientation="unspecified"
            android:theme="@style/SplashActivty">

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

        </activity>

তবে তারপরে আপনি যা চান তার সাথে ওরিয়েন্টেশন সেট করার কার্যকারিতা হারাবেন।
অ্যান্ড্রয়েড বিকাশকারী

2

আমি এই ত্রুটিটি পেয়েছিলাম যখন আমি চিত্র ক্যাপচার করার চেষ্টা করি বা গ্যালারী থেকে চিত্র নেওয়ার চেষ্টা করি আমার জন্য যা কাজ করে তা হ'ল উভয়কে সরিয়ে ফেলা

 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

এবং

android:screenOrientation="portrait"

এখন আমার ক্রিয়াকলাপটি এই থিমটি ব্যবহার করছে:

  <style name="Transparent" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:colorBackgroundCacheHint">@null</item>
        <item name="android:windowAnimationStyle">@android:style/Animation</item>
        <item name="android:windowIsTranslucent">false</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:backgroundDimEnabled">false</item>
    </style>

এটি কার্যকর হয় না, windowIsFloatingকারণ একই ক্রাশের কারণ windowIsTranslucent
অ্যান্ড্রয়েড বিকাশকারী

2

কেবল 8.0.0 ব্যতিক্রম ছুঁড়ে, 8.0 এর উপরে ব্যতিক্রম সরিয়ে নিয়েছে

8.0.0 ব্যতিক্রম নিক্ষেপ


অ্যান্ড্রয়েড 7, 7.1, 8.0, 8.1 সকলেরই এই সমস্যা রয়েছে
হামেদ জলিলিয়ানী

appInfo.targetSdkVersion > Oব্যতিক্রম নিক্ষেপ করুন
মিংগো

এটি targetsdk সংস্করণ পরীক্ষা করে । ডিভাইসটি আসলে কী sdk সংস্করণ চলছে তা বিবেচনাধীন নয়, আপনি অ্যান্ড্রয়েড ও (28) এর বিরুদ্ধে সংকলন করছেন তবে প্ল্যাটফর্মের সেই সংস্করণটির সম্মেলনগুলি অনুসরণ করছেন না।
বেঞ্জিকো 99

2

আমার পক্ষে কাজ করা একমাত্র জিনিসটি ছিল পরিবর্তন করা

android:screenOrientation="portrait"

প্রতি

android:screenOrientation="unspecified"

সমস্ত স্বচ্ছ ক্রিয়াকলাপের জন্য ম্যানিফেস্টে।

এইভাবে এটি সমস্ত এপিআই সংস্করণগুলির সাথে সামঞ্জস্যপূর্ণ যেহেতু আড়াআড়ি ক্রিয়াকলাপটি পিতামাতার ক্রিয়াকলাপ থেকে তার প্রবণতা উত্তরাধিকার সূত্রে প্রাপ্ত বলে মনে হচ্ছে targetApi: 28

শৈলীটি এতে অন্তর্ভুক্ত থাকায় ছেড়ে দেওয়া যেতে পারে <item name="android:windowIsTranslucent">true</item>


এই সমাধানটি চেষ্টা করে দেখুন, তবে অ্যাপ্লিকেশনটি এখনও ক্র্যাশ করেছে
অ্যানবার

তবে তারপরে আপনি ওরিয়েন্টেশনটি সেট করার কাজটি হারাবেন
অ্যান্ড্রয়েড বিকাশকারী

@ অ্যান্ড্রয়েড ডেভেলপার: ওরিয়েন্টেশনটি আমি যেভাবে বুঝতে পারি তা পিতামাতার ক্রিয়াকলাপ থেকে উত্তরাধিকার সূত্রে প্রাপ্ত হবে। আপনি যদি
স্বচ্ছভাবে

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

2

ব্যবহার

android:screenOrientation="behind"

এবং থিম

<style name="translucent" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowBackground">#beaaaaaa</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowAnimationStyle">@android:style/Animation</item>
    <item name="android:typeface">normal</item>
    <item name="android:windowSoftInputMode">adjustPan</item>
    <item name="windowActionBar">false</item>
</style>

1

আমি জানি না এটি গুগলের কোনও ত্রুটিযুক্ত বা উদ্দিষ্ট আচরণ কিনা তবে আমি (কমপক্ষে মুহূর্তে) কম্পাইলএসডিকি ভার্সন এবং টার্গেটএসডিপি ভার্সনকে গ্রেডলে ২ 26-এ পরিবর্তন করে সমাধান করেছি ...


3
আপনার লক্ষ্যমাত্রা স্তর কম করা উচিত নয়। আপনার অ্যাপটি শেষ পর্যন্ত প্লে স্টোর থেকে অবরুদ্ধ করা হবে। সর্বদা সর্বশেষতম অ্যান্ড্রয়েড এপিআই স্তরের android-developers.googleblog.com/2017/12/…
শমুয়েল

1
@ শামুয়েল: ভুল আপনি 26 টার্গেট করতে পারেন এবং স্টোরে 28 এ উপলব্ধ থাকতে পারেন।
রেজিস_এজি

1
ঠিক আছে, আমি 'শেষ পর্যন্ত' লিখেছিলাম যদি আপনি আপনার অ্যাপটি কোনও পুরানো এপি স্তরকে লক্ষ্য করে তৈরি করে থাকেন যখন আপনি আপডেট করতে বাধ্য হবেন তখন আপনি ব্যথার জগতে
পড়বেন

এটি কোনও সমাধান নয় বরং একটি কর্মচঞ্চল। একদিন আপনাকে আপনার অ্যাপ্লিকেশনটি ২৮ এ স্থানান্তর করতে হবে এবং তাই!
Sud007

1

আপনি যদি নিজের সমস্যার সমাধান না করে থাকেন তবে ম্যানিফেস্টে বিজ্ঞাপনের ক্রিয়াকলাপটি কেবল এটির মতো নিবন্ধ করুন:

<activity
android:name="com.google.android.gms.ads.AdActivity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
tools:replace="android:theme"
 />

আপনাকে এসডির সর্বশেষ সংস্করণেও আপডেট করতে হবে।


1

সম্ভবত আপনি ডায়ালগের মতো দেখতে ক্রিয়াকলাপ দেখিয়েছেন (পূর্ণ-স্ক্রীন নয়), তাই সরান screenOrientation থেকে সুস্পষ্ট বা কোড থেকে। এটি সমস্যার সমাধান করবে।


হুম খুব অদ্ভুত, আমার ক্ষেত্রে তা ছিল। বিভিন্ন অ্যান্ড্রয়েড সংস্করণে অ্যাপটি চালানোর চেষ্টা করুন, ফলাফলটি কীভাবে আপনাকে সাহায্য করতে পারে তা দেখুন ...
বালফ্লায়ার

1

এটি 27 এর পরে ঘটেছে, টার্গেটএসডকভিশন 26 রিপ্লেসটি ব্যবহার করুন, গুগল এটি স্থির করার জন্য অপেক্ষা করুন


2
উত্তর পোস্ট করার সময় দয়া করে কোনও রেফারেন্স (লিঙ্ক বা উদ্ধৃত) সরবরাহ করুন। তাই ভবিষ্যতের ব্যবহারকারীরা সহজেই বুঝতে পারবেন। এছাড়াও, স্বাগত জানাই তাই কমিউনিটি
মোহাম্মদসালিম শিবানী

@ মোহাম্মদসালিম শিবানী এখানে: ইস্যুজেট্র্যাকার জিওলাইস / স্পিরিজ / 4568৫৪৪২২২ # কমেন্ট ৪ "আমাদের ইঞ্জিনিয়ারিং টিম এই বিষয়টি ঠিক করেছে It এটি ভবিষ্যতে অ্যান্ড্রয়েড রিলিজে উপলভ্য হবে, সুতরাং দয়া করে রিলিজ নোটগুলিতে নজর রাখুন" "
অ্যান্ড্রয়েড বিকাশকারী

এটি খারাপ পরামর্শ
ক্রিস

0

আমি পুরো পর্দাবিহীন উপাদানগুলি থেকে "প্রতিকৃতি" ট্যাগগুলি সরিয়েছি এবং সবকিছু ঠিকঠাক হয়ে গেছে।

android:screenOrientation="portrait"

0

দয়া করে আপনার ক্রিয়াকলাপের শৈলীটি পরীক্ষা করুন এবং নিশ্চিত করুন যে আপনি কোনও ট্রান্সলুসেন্ট সম্পর্কিত জিনিস ব্যবহার করছেন না, স্টাইলটি বিকল্পে পরিবর্তন করুন। যাতে আমরা এই সমস্যাটি সমাধান করতে পারি।

android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

0

আমি android:screenOrientation="portrait"আমার অনকারেতে কোডটি সরিয়ে এবং নীচে যুক্ত করে এই সমস্যাটি সমাধান করেছি

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

আমার থিম বৈশিষ্ট্যগুলি যখন

<item name="android:windowIsTranslucent">true</item>
<item name="android:windowDisablePreview">true</item>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.