किसी को भी कैसे एक यहाँ की तरह एक चमक स्क्रीन फ़िल्टर लागू करने के लिए एक विचार है:चमक स्क्रीन फ़िल्टर
http://www.appbrain.com/app/screen-filter/com.haxor
मैं एक प्रारंभिक बिंदु की जरूरत है और मैं इसे कैसे करना है पता नहीं कर सकते हैं।
किसी को भी कैसे एक यहाँ की तरह एक चमक स्क्रीन फ़िल्टर लागू करने के लिए एक विचार है:चमक स्क्रीन फ़िल्टर
http://www.appbrain.com/app/screen-filter/com.haxor
मैं एक प्रारंभिक बिंदु की जरूरत है और मैं इसे कैसे करना है पता नहीं कर सकते हैं।
बस एक पारदर्शी पूर्ण स्क्रीन गतिविधि बनाएं जो छूने से गुजरती है। अपने main.xml लेआउट फ़ाइल के लिए
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
Window window = getWindow();
// Let touches go through to apps/activities underneath.
window.addFlags(FLAG_NOT_TOUCHABLE);
// Now set up content view
setContentView(R.layout.main);
}
सिर्फ एक पारदर्शी पृष्ठभूमि के साथ एक पूर्ण स्क्रीन LinearLayout का उपयोग करें::
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/background"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#33000000">
</LinearLayout>
तब समायोजित करने के लिए contentView सेट करने से पहले अंतिम रूप निम्नलिखित विंडो झंडे उपयोग के माध्यम से पारित करने के लिए "चमक" बस कहीं अपने कोड से पृष्ठभूमि रंग का मूल्य बदल:
findViewById(R.id.background).setBackgroundColor(0x66000000);
धन्यवाद, यह पारदर्शिता सेट करने से संबंधित काम कर रहा है, लेकिन स्पर्श घटनाएं अजीब काम करती प्रतीत होती हैं, मैं स्क्रॉल कर सकता हूं लेकिन जब मैं एक प्रोग्राम आइकन पर क्लिक करता हूं तो ऐसा लगता है कि यह फ्रीज नहीं है (काफी फ्रीज नहीं है, लेकिन प्रोग्राम खोलना नहीं है) – Alex
कोई अन्य विचार? मुझे नहीं लगता कि शीर्ष पर एक पारदर्शी गतिविधि है समाधान – Alex
कोई भी कृपया :)? – Alex
आप यह भी कोशिश ca:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.max_bright);
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 100/100.0f;
getWindow().setAttributes(lp);
}
इस उत्पादन कोड है, लेकिन अगर आप के आसपास खेल रहे हैं .. कोशिश इस Undocumented hack
यह उपयोग करता है:
private void setBrightness(int brightness) {
try {
IHardwareService hardware = IHardwareService.Stub.asInterface(
ServiceManager.getService("hardware"));
if (hardware != null) {
hardware.setScreenBacklight(brightness);
}
} catch (RemoteException doe) {
}
}
याद रखें कि यह इस अनुमति का उपयोग करता है:
<uses-permission android:name="android.permission.HARDWARE_TEST"/>
मुझे हार्डवेयर 0 9.जर कहाँ मिल सकता है? इसके लिए [ट्यूटोरियल (http://www.tutorialforandroid.com/2009/01/changing-screen-brightness.html) – noobProgrammer
असल में यह लिंक टूटा हुआ है ... – Device
एक उदाहरण हो जाओ WindowManager का।
WindowManager windowManager = (WindowManager) Class.forName("android.view.WindowManagerImpl").getMethod("getDefault", new Class[0]).invoke(null, new Object[0]);
एक पूर्ण स्क्रीन लेआउट एक्सएमएल बनाएँ (लेआउट fill_parent
करने के लिए सेट पैरामीटर)
ताकि स्पर्श करने के लिए के माध्यम से पारित कर दिया है क्लिक करने योग्य नहीं, फ़ोकस करने योग्य नहीं है, न कि लंबे समय से क्लिक करने योग्य, आदि के रूप में अपने दृश्य सेट आपका ऐप और ऐप इसका पता लगा सकता है।
view.setFocusable(false);
view.setClickable(false);
view.setKeepScreenOn(false);
view.setLongClickable(false);
view.setFocusableInTouchMode(false);
प्रकार android.view.WindowManager.LayoutParams
के लेआउट पैरामीटर बनाएं। ऊंचाई की तरह LayoutParams layoutParams = new LayoutParams();
सेट लेआउट पैरामीटर, चौड़ाई आदि
layoutParams.height = LayoutParams.FILL_PARENT;
layoutParams.width = LayoutParams.FILL_PARENT;
layoutParams.flags = 280; // You can try LayoutParams.FLAG_FULLSCREEN too
layoutParams.format = PixelFormat.TRANSLUCENT; // You can try different formats
layoutParams.windowAnimations = android.R.style.Animation_Toast; // You can use only animations that the system to can access
layoutParams.type = LayoutParams.TYPE_SYSTEM_OVERLAY;
layoutParams.gravity = Gravity.BOTTOM;
layoutParams.x = 0;
layoutParams.y = 0;
layoutParams.verticalWeight = 1.0F;
layoutParams.horizontalWeight = 1.0F;
layoutParams.verticalMargin = 0.0F;
layoutParams.horizontalMargin = 0.0F;
कुंजी कदम: आप सेट कर सकते हैं चमक का कितना प्रतिशत की जरूरत है। layoutParams.setBackgroundDrawable(getBackgroundDrawable(i));
private Drawable getBackgroundDrawable(int i) {
int j = 255 - (int) Math.round(255D * Math.exp(4D * ((double) i/100D) - 4D));
return new ColorDrawable(Color.argb(j, 0, 0, 0));}
अंत में windowManager जो आपको पहले बनाए करने के लिए दृश्य जोड़ने।
windowManager.addView(view, layoutParams);
ध्यान दें: आप स्क्रीन पर एक उपरिशायी रखना SYSTEM_ALERT_WINDOW
अनुमति लेनी होगी।
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
इसका परीक्षण किया गया है और यह काम करता है। अगर आप अटक जाते हैं तो मुझे बताएं।
कृपया आप इस [प्रश्न] का पूरा जवाब पोस्ट कर सकते हैं (http://stackoverflow.com/questions/22748031/create-a-simple- स्क्रीन- फ़िल्टर) उदाहरणों का उपयोग अत्यधिक सराहना की जाएगी – noobProgrammer
मुझे एक ही समस्या का सामना करना पड़ा है। मैंने यह प्रश्न भी पोस्ट किया है http://stackoverflow.com/questions/2222146/control- स्क्रीन-brightness-in-android-using-background-service। मैं इस मुद्दे को हल करने में सक्षम था। यू पोस्ट में सही विधि देख सकते हैं। –
इस लिंक को आजमाएं, यह आपकी मदद कर सकता है: http://android-er.blogspot.com/2011/02/change-android-screen-brightness.html –