I have a widget that makes use of a new feature that, according to the infinite wisdom of the intarwebs, is stock in Android 4.0 (Ice Cream Sandwich). Conveniently, my phone is just that.
This widget inverts the screen colors for the phone. Not just an app; the screen in its entirety.
I started playing around with an amazing app called Tasker the other day that can do some crazy-powerful things; including run scripts, send commands to the phone, etc.
I'm trying to figure out where in the world this inversion lives so I can tap into it myself via Tasker, but I'm falling short everywhere. The Android API documentation is Greek to me, and Google seems to only ever want to point me to people talking about how great the feature is.
Any ideas as to where I can find this feature/function/action/whatever in a programmatic sense?
Thanks much in advance! Any help will be most appreciated.
I've searched and the only thing I found is when it's available on custom roms/kernels.
I don't think it's available for stock roms.
Related
I understand CodeMirror has issues on mobile and behavior varies with extensions in use.
However, for me it seems pretty much unusable everywhere I encounter it on Android. Have a look at Kotlin Koans and try the Backspace key. Amongst other things, I get gobbledygock and a bunch of newlines.
I did not find a single way around this. Tried two devices (OnePlus 3T and Pixel C) running Android 7 and 8 using on-screen keyboards or bluetooth physical ones. The results are pretty much the same.
This seems pretty odd and I am surprised nobody (Google?) is stepping in to fix it.
I'd like to use an Android device for basic (CodeMirror-based) coding, and I'd very much appreciate a suggestion to get around this annoyance. :)
Thanks
Code Editor inserts a new line above current line on every keypress
Android native app using WebView, backspace doesn't work properly
Which are the main advantages of using libGDX? Is there some difference between libGDX and Android SDK, or libGDX is just like a framework that uses Android SDK? Which one you advise me to use?
First of all i want to say, that this question is a bit opinion based and so i think it will be closed soon. Anyway i want to point out an important thing:
Libgdx is a crossplattform framework. You can develop and test 99% of your game on desktop. Then add aview code lines and it runs on android to. The only difference between the android app and the desktop version are then the Sensors and the Touchscreen. You may also get problems with the Screen sizes, but for this there are solutions you should take a look at.
I never worked with the android sdk, but as much as i know you have to use the emulator or your phone for testing. So the testing process is really slow and annoying.
And also if you want to develop for Android phones only, why don't you spent 5 minutes in thinking about how to controll your game on desktop and add those few lines?
Thats the thing i wanted to point out. The rest is up to you.
Maybe you want to take a look at the video on this page.
I'm trying to make some of my applications available on Android 4.0 (Ice Cream Sandwich) devices. It would be helpful to know the different things to look for, as sort of a checklist.
What are the generic steps necessary to make an application available and functional on an Ice Cream Sandwich device? I'm not looking for every single potential API change to make, but any detail would be appreciated.
One thing I have encountered relating to usability is that if you have a fullscreen activity, to allow some way to exit it or go back since phones might not have hardware keys to send the back event. Basically, never assume that the user has hardware keys available.
Google also recently released a design guide for ICS available at http://developer.android.com/design/index.html
Well, as Blundell said, it should work without any problems. I have however, found one quirk while running ICS in the emulator with my apps (maybe this applied to Honeycomb as well, no idea).
Here it is - if you have an app widget, and you don't provide the android:previewImage attribute in the appwidget-provider configuration, your widget will not be visible in the "Widgets" tab. You can use an app that comes with the ICS emulator (Widget Preview) to generate this preview image.
I'm spending considerable time in making my UI to work with keyboard input only. But in the end I'm not sure whether I can rely on the assumption that Android devices all have touch screens.
Is there a way to determine if an Android device has a touch screen?
You should research the existing devices and read the Android Compatibility Definition Document (CDD) and decide for yourself.
I have spent some considerable time trying to figure out this problem for myself. The posters above are correct that Android already powers some non-touch devices and will power Google TV in the near future, but as it currently stands, the CDD specifically requires that ALL Android devices MUST have a touchscreen.
Basically, the Android Compatibility program was created to hedge against the sort of fragmentation issues you're worrying about now. It lists a bunch of requirements, and if a device does not meet those requirements, it does not get access to Android Market. These requirements include a touchscreen, wireless communication, bluetooth, a camera, and much more.
If you research those tablets and netbooks, you will find that not a single one carries the Android Market. Augen recently tried to pull a fast one with their new GENTOUCH 78 tablet, but had to rescind their claims that the tablet would carry Android Market after being shot down by the Android Compatibility Team.
So, if you are only distributing your app through Android Market, you have nothing to worry about until Google changes the CDD. But if you'd like to offer your app on other app stores or as a direct download, then you'll have to worry about your key mode navigation issues.
If it's any consolation, I have found that many, many apps have the exact same problem; they are impossible to use without a touchscreen. Many of them also have serious issues with focus and the soft keyboard. Sometimes the keyboard stays up when it should be hidden. Sometimes you can't get the keyboard to pop up no matter how many times you click on an EditText. IMO, the Android framework does not handle these things all that well.
Given all that, it will certainly be interesting to see how Google TV fits into all this. Will they update the CDD to be compatible with their set-top boxes? Will they use a different SDK and CDD for Google TV implementations? Will they ignore the Compatibility Program altogether when it comes to Google TV? Your guess is as good as mine.
Update:
It seems that someone at Google has finally come forward and admitted that Android is not ready to run on a tablet:
http://phandroid.com/2010/09/10/shocker-google-says-android-not-meant-for-tablets-in-its-current-state/
To me, this says that Google was not prepared for the accelerated adoption of the Android OS and has not adequately roadmapped the future of the platform. Supporting screens larger than 480x800 is barely possible, and Samsung was only able to do it by working closely with Google on the Galaxy Tab. So I'm not so sure we need to worry about non-touchscreen devices in the near future. They'll be here eventually, I'm sure, but when they do arrive we may see a separate app market just for those, or some altered filtering scheme on the existing market, a new CDD, who knows.
To me, this says that Google is still playing it by ear, and we'll just have to do the same.
All the phones so far have touch screens, but there is no promise that they must.
However there are lots of netbooks, notebooks, and soon to be TVs that have no touch screen.
However these devices have mice. From what I've seen, the mouse input gets pumped through the touch system so MouseDown is ACTION_DOWN, etc... (Don't know about right click though)
Are you targetting just the phones? Android is appearing on many devices including TV's I've no idea if new libs will be released to isolate parts of the devices from each other, but if you want a broader audience I'd suggest keeping the keyboard input available if you are
Google TV (GTV) is the most popular Android notouch device (as of the time this answer is composed). However, there are several devices that will call for notouch renderings if you have "notouch" resources (e.g. a directory like res/layout-notouch/ )
To accommodate notouch devices, made sure that focus will cause a visual selection indicator, and (for GTV) that keystroke listeners are in place for the directional-pad center button. Using default widgets and themes will often accomplish much of this automatically. If you make your own buttons, you need background 9-patches for focused and focused+pressed.
Running on a GTV is a good test environment to make sure that notouch works well, and GTV has an emulator now, though it runs only on Linux/x86.
Do you have any idea what's the starting point to develop an UI for Android OS, similar with HTC SenseUI ?
Can I create that on top of Android or I need to get the Android source code ?
Thank you.
Florin Matincă
You'd need to modify the Android OS to some extent, but since Android is open source, that's not a problem.
The problem is getting it installed on phones - if you've noticed, the only companies that have custom UIs are also phone manufacturers, so they can just ship their phones with it installed. Also, if a new version of Android comes out, you'd need to get the new source, and modify most of it again.
Distribution would be a serious problem...
HTC Sense consist of a variety of functions.
Some like the Lock Screen can be implemented as normal programs. The start screen for programs can as well.
The systems setting for example can't be easily replaced without going into the android source code.
I have to disagree with xil3, there are some realy popular home screen replacements out there not restricted to a certain brand.
ADW.Launcher
LauncherPro
HelixLauncher
HelixLauncher2
All four are available on market place and therefor the distribution is simple.
HelixLauncher (and 2) are based on the Launcher from android itself, for which the sources are available as a git repository. This means you could use these sources to start your own Home Screen replacement.
So have fun!