Using the Master/Detail template in ViewPager Fragments (download link) - Android Q&A, Help & Troubleshooting

Working code: https://github.com/lukeallison/ViewPagerMasterDetail
Android Master/Detail Flow template: http://developer.android.com/tools/projects/templates.html#master-detail-activity
Description: Using the Master/Detail Flow template available in Android Studio, my application utilizes a ViewPager to manage three Parent fragments. The third fragment is a Master (list), which has a Child (detail) fragment.
Issues:
1. When fragment_item_list is first inflated the App Bar pushes the last item of the list below the bounds of the screen. This issue is no longer present after rotating the device. Simply adding padding to the bottom of the screen will not fix the issue as it will leave an unwanted space at the bottom of the screen after rotating. Numerous SO threads have failed to address this issue. - Fixed
2. Requires android:configChanges="orientation|keyboardHidden|screenSize" added to the manifest in order for the Child (detail) fragment to inflate the correct layout when rotated. I'd like to not have to enforce this. PLEASE help fix this bug.
3. Uses deprecated setOnPageChangeListener and onAttach(Activity)
4. Upgrading the dependencies to 23.2.0 results in the ItemListFragment failing to inflate the correct Fragment when rotated so I can't update the libraries in the application
5. The code is probably more cumbersome than necessary
Please help me fix these bugs so we have a template that myself and others can use.

Just a cheeky bump.

Related

[APP][PREVIEW]TouchReader - Touch Scroll Text Reader [UPDATE 08/11/09]

UPDATED, see 2nd post for more details.
Touch Reader is a text file reader that has touch scroll.
This program is still in early development, and is not very pretty at all! (Hey, i'm a programmer, not an artist)
There will be a new version with UI improvements soon.
This program is written in C++ using just the win32 and GDI interfaces, so it should not require any libraries, and should work on any windows mobile/pocketPC version (Although i might have to re-compile it against a different SDK, let me know if it works.)
It will work on any screen size, although on larger screens, the text and buttons get too small at the moment (i'm working on it).
TODO:
- Save/resume last position of files.
- Adjustable font size
- Show percentage and line number
- Goto line/percent
- Kinetic scroll (as in flick and it keeps going)
- Optimisation (Draw to buffers)
Planned for future:
- Graphics in UI (ie. skinning of buttons, etc.)
- Chapter index, goto chapter
- Unicode/multibyte file support
- More file format support
There is one known bug that I will NOT fix:
If a word is too large to fit on the screen in one line, it is just clipped, not cut and wrapped.
I have also attached the Win32 binary if you want to just take a look without putting it on your phone.
Update 8/11/09
- Moved menu to bottom
- Enlarged buttons
- Enlarged file list
- Fixed Exit button problem when resizing (switching to landscape/portrait)
- Fixed issue with scrollbar
- Fixed issue with file list when resizing (items going off the bottom of the list)
Any pictures?
PDF
Does it support PDF?

Some tips on graphics for a coder coming from ActionScript

Hello, I come to ask only for a few tips or merely a bit of guidance on my development for Android.
I'm pretty skilled in ActionScript and new to Java. In this thread I ask how would I do some things in Java, providing the equivalent in AS.
I intend to draw shapes on screen and use them as UI - as a deeper layer within the Android XML UI.
In ActionScript, I can create Sprites or DisplayObjects, edit their "graphics" property like
// create a DisplayObject instance
_someDisplayObject = new DisplayObject();
// create a white square inside it
_someDisplayObject.graphics.beginFill(0xFFFFFF);
_someDisplayObject.graphics.drawRect(0,0,100,100);
_someDisplayObject.graphics.endFill();
// place it dinamically in a position relative to the Stage (canvas)
_someDisplayObject.x. = Stage.stageWidth / 2;
------------------
Also, are there Tweening libraries like TweenLite or Tweener ? Those which allows to create animation with one like of code like:
// move display object to position X = 300 with half transparency, in half second
Tweener.addTween(_someDisplayObject, { x:300, alpha:0.5, time:0.5, transition"EaseOutSine" } );
------------------
Can anyone give a clue, on what am I looking at, to try the same in Java for Android ?
Just an advice letting me know where to start would be greatly appreciated. :fingers-crossed:
Thank you !
You can create shapes in Android using XML or in your Java code or with both. You can also create Animations including Tween animations. (I haven't used animations before though so I can't help any further).
The first place to go is the Android Developers website (d.android.com/develop) and then in the API Guides section under User Interface option and App Resources option in the left hand menu. There are samples included in the Android SDK under API Demos which you can use to get your started.
I can't post links because I haven't made 10 posts yet, sorry.
As you already know, the Android display model is more complex than the one used in ActionScript.
There is no direct equivalent for the graphics property from AS3 in Android.
To draw low-level graphics you can use the canvas parameter provided in the onDraw method (you override it in your own class inherited from android.view.View).
As for the Tweening, like Kavrocks said, try to learn how to use the Animation class and it's extensions, because they are built inside the android framework, therefore optimized (that's just my opinion). All the tweening engines in AS3 are based on dynamic calling of properties (by name). Java uses the reflection api for calling dynamic properties, but it is much slower than a direct call (from a specialized Animation class, in this case).
I am also trying to figure out different modes of applying animations and effects in actionscript. There's a tutorial on Lynda where you can see som tips from migrating from AS to Java, and HTML5, both of this can help you understand better how to apply them in your application.

[ROM][5.1.1][NEW] Flyme OS 5.1.8.1R for Micromax Canvas Nitro A311/A310

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
FLYME OS 5.1.8.1R for Micromax Canvas Nitro A311/A310​
The Flyme OS 5 based on Android 5.1 Lollipop (Cyanogenmod) does come with refined user experience like redesigned transition animations, new icon pack and with tons of newly added features.
Disclaimer
Code:
include
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
ROM Features
Flyme OS features are given in Post#2
Installation Instruction
- Use TWRP 2.8.6.0/TWRP 2.8.7.0
- Wipe system, cache, dalvik cache, data, internal storage
- Format data
- Unmount data (Go into Mount settings in TWRP, then remove checkmark from system, data, cache)
- Flash the zip file
- Flash gapps from given link below
- Flash Supersu zip
Youtube Review of FlymeOS v5.1.8.1R by @Prasad527
https://www.youtube.com/watch?v=vyYfWLl7xBU
Download Link
ROM LINK (v5.1.8.1R)
https://goo.gl/pkfRLO
ROM LINK (v5.1.7.25R)
https://goo.gl/NvTvQz
Gapps ONLY for FlymeOS v5.1.7.25R - DON'T USE IT ON ANY OTHER VERSION
https://goo.gl/1n1wOb
Alternate Link for Gapps for Flyme v5.1.7.25R
https://1drv.ms/f/s!Ap5ZzRIsABM_e2IUJN-bpk3xUsg
Important Note: Flash ROM then reboot. Don't flash any other zip along with ROM (i.e. gapps and other). First boot takes time (almost 10 minutes). So be patient. Set the device settings and reboot to recovery then flash Gapps and other patches. Also take note that Supersu and sound patch already merged in v5.1.7.25R.
ROM LINK (v5.1.6.24R)
https://goo.gl/IdKBRn
ROM LINK (v5.1.5.20R)
https://goo.gl/oQWqlv
Patch for A310 Users
https://goo.gl/nA0njL
TWRP RECOVERY 2.8.6.0
https://mega.nz/#!plUBWb6b!S4Mal6vqfufpvxe8nCklCvUn2B3ElYEWthAtnYdlQDk
TWRP RECOVER 2.8.7.0
https://goo.gl/mZpyPE
GAPPS Link
https://basketbuild.com/uploads/devs/osm0sis/gapps/tk_gapps-modular-pico-5.1.1-20150920-signed.zip
Sound Patch
https://goo.gl/PHQeol
Credits
@fire855
@Rohan Taneja
@addictz10
@Surajlad9
XDA : DevDB Information
Flyme OS 5.1.8.1R ROM for the Micromax Canvas Nitro A310/A311
Contributors
@bravonova
ROM OS Version: 5.1.1 Lollipop
ROM Kernel: Linux 3.4.67
Based On: CyanogenMod
Version Information
Status: Beta
Stable Release Date: 2015-05-27
Created 2015-05-27
Last Updated 2016-08-09
Flyme OS 5 full changelog:
Desktop:
Floating notice: supports floating inform, to avoid the operation is interrupted.
Multitasking: new card multitasking list, long press to lock individual applications.
Split-screen mode: Multi-screen mode to create a list of tasks while using two applications, you can adjust the window proportions (only part of the application).
Batch finishing icons: Long press the desktop select “sort icon ‘batch select the icon to move to a different desktop or folder.
Shake finishing the desktop: Go to “arrange icons” mode, shake your desktop tidy Fast Recovery.
Folders are automatically named: Create a folder, depending on the application type for the folder name is automatically.
Notification bar:
Optimize the layout: drop-down notification bar without notice Expand all default switch, when there is multiple notifications pull-down notification to view more.
Notify management: Settings – Notification and Status Bar – application notification management, support each application switching and priority setting for notification.
Lock screen:
Music Locker: New music lock screen, lock screen display directly covers and lyrics.
Lock screen notifications: Settings – notification and status bar, select whether to display the notification in the lock screen to notify whether the new bright screen.
Information:
Customer Service Assistant: New customer assistant accounts, support online chat.
Floating notice: Supports quick reply message and copy the code in the floating notification.
Smart SMS: Update Smart SMS service menu, more powerful.
Phone:
Floating notice: New calls Floating notice.
Dialpad: Suspended dial plate design, support slide switch contacts, call records, the Yellow Pages.
Online Yellow Pages: New independent online Yellow Pages, online services, one-touch access.
Yellow Correction: Yellow Pages for the online identification number, the error correction can take the initiative in the contact details.
Number Tags: against harassment calls, support for online marking the contact details.
Recording List: Telephone – setting “recorded message” and “call recording” can see the individual recordings.
Dialpad switch: to enter the phone – setting, open “dial pad input switching,” in the dial pad click on the lower left corner of the keyboard symbol to switch T9 and full keyboard dial pad.
Flyme communication:
Switching numbers: support is changing the network telephone number bind.
Set up:
The new design: for interaction and functional grouping adjustment.
Search: New search function, support for the use of text and voice search settings.
Volume Category: Settings – Sound and vibration – volume, the new volume category management.
Network Sharing: Settings – Wireless Network, click on the Wi-Fi hotspot to share Wi-Fi network through a two-dimensional code.
Preferred networks: Settings – Wireless Network, click on the Wi-Fi hotspots, set the priority for this network connection.
Energy management: Optimizing power ranking, classification display hardware power consumption.
Default Application: Settings – Application Management – default applications, support for different categories to set the default application.
Analog Color: Settings – Accessibility – Developer Options – simulation color space, color blindness or color weakness mode supported by the analog color space.
Search:
Plugin: New weather search 4 * 2 widget.
Home: New Search Home, updated in real time hot search words.
Card: search results by showing the card, the interface cleaner.
Input:
Candidate words: new candidate word dropdown, improve the speed choice of words.
Transcriber: New full-screen handwriting keyboard input more casual.
Symbol Keyboard: New independent symbols keyboard, keypad lock symbol support continuous input symbols and expression.
Vibration sense switch: to enter the input settings screen, select whether to open the key vibration.
Mobile butler:
Rights management: access rights management – setting, open “cutting each other to start the application” switch, wake each behavior tracking applications, a key force off wakeup path.
Harassment intercept: harassment interception to a safe center to support blocking unknown numbers and hidden numbers.
Garbage clean white list: application cache, redundant installation package, application uninstall remnants supports adding white list, to avoid false cleanup.
Regular cleaning: Regular cleaning new “scan and clean” option rubbish more peace of mind.
Notification bar traffic information: traffic management – setting, the new “Notification bar shows the flow of information” switch.
Mobile Acceleration: clean up the permanent background, to accelerate the speed of the phone.
Rapid examination and a key optimization: no need to wait to enter the interface will be able to know the phone health status, one-click fix all problems.
Applications whiten: support the cottage detection application, eliminate safety hazards.
Toolbox:
New “toolbox” App.
Flashlight: Support SOS mode and brightness adjustment third gear.
Mirror: Support normal, twist, rotate, mirror effect symmetrical four.
Compass: Support orientation and latitude and longitude display.
Level: Intuitive view levelness.
Measurement scale: Supports cm and inch two scales.
Magnifier: supports torch mode can also be used at night.
Shortcuts: frequently used tool to add support for the desktop shortcut.
Browser:
Home: Home new design.
Window: Window tag optimization show form.
Card: Added “micro letter headline” card.
Toolbar: new toolbar at the bottom, more intuitive operation.
Music:
Music Library: Access shrimp music, comprehensive music library rich resources.
Contents: Introduction of a single song shrimp, shrimp rankings, selection set, you may also like the daily recommended content.
Radio: New offline radio function, WLAN environment to automatically update the music library offline.
Song Roaming: For the love of singles, a key roams similar songs.
Singles Comments: New singles comment feature, data access shrimp music reviews.
Artist Collection: Artist Collection features new, easy to find your favorite artists.
Members receive: Music opened Thanksgiving activities, membership users can receive free two-month membership services, after the purchase of non-members can also receive free
Video:
Video Feed: New video feeds, support update reminders, chase drama easier.
Potatoes from Channel: New potatoes from channel content, rich video library.
Online seat selection: Adjust movie theaters interface, more convenient booking.
Dropzone: In video playback applications support floating window, the perfect realization of “picture in picture”; support suspension / full screen seamlessly switch playback, without cache.
Cache management: the same series of video automatic classification, by “cache more” direct cache with other video episodes, cache operations more convenient.
Camera:
Shooting GIF: GIF new shooting mode, easy homemade face pack.
Time Watermark: Camera – set new time watermark switch.
Voice Camera: Camera – setting new voice camera switch.
Flash: Flash memory setting status, avoid duplication.
Manual mode: increase saturation, contrast, and white balance adjustment option.
Gallery:
Map Mode: Gallery – set, display photos in a map, generate personal and exclusive travel map.
Pictures: Favorites favorite pictures quickly browse in the collection folder.
Custom Cover: Press folder covers, replace favorite picture as the cover.
Filter Small size: Gallery – setting, the new small-size image filter switch, gallery cleaner.
Silent backup: Gallery – setting new silent backup switch.
Is hidden: Press the folder displayed directly Hide unwanted folders?
Photo Week view: two-finger zoom, free to switch month and week views, more convenient management.
Photo Editor: Optimize photo editing features, free to adjust the level of the filter and mosaics.
Set Wallpaper: Set wallpaper function optimization, support for custom fuzzy level and overlay pattern.
Topic landscaping:
Font Replacement: support the replacement of system fonts without root and rebooting.
Variety lock screen: New Variety lock screen, unlocking is a pleasure.
App Store:
Best application: the most beautiful application and content collaboration, found a small but beautiful application.
Applications Tags: Applications New Applications tab shows details page for easy viewing similar applications.
Permissions Show: The new application details page showing detailed permissions entrance, detailed permissions can understand the application before installation.
Micro-channel sharing: sharing style micro-channel optimization.
Calculator:
Rates search: When Conversion Rates support direct search by country name.
Unit operation: When the unit converter supports direct operation.
Uppercase conversion: Press the calculated results can be directly converted to uppercase digital.
Clock:
Batch delete: Supports long press batch delete alarm and world clock.
Lock screen weather: it removes the lock screen clock weather animation, text display weather information.
Timescale: Timer setting to adjust the time scale style.
File:
Design: Optimizing directory structure, file classification provides entry.
Remote management: new FTP remote management capabilities, the same Wi-Fi environment, no data line management phone files directly on the computer.
Hidden folders: Documents – setting, the freedom to choose whether to display hidden folders / directories.
Storage space display: Docs display is remaining storage space.
Display: adjust the length of the file name is displayed, you can view more detailed filenames.
Find the phone:
Loss reporting mode: Added a key report the loss, report the loss will temporarily restore the phone to factory state, seal all private data (images, video, etc.), to ensure that the loss of phone, private data will not be disclosed.
On-line reminder: When the phone is lost without waiting for the phone line, on the line after reporting the loss as long as the message will immediately notify the owner.
Intelligent alerts Alert: When a lost handset without knowing the exact location in the vicinity of the time, intelligent alerts using the Alert feature, the phone automatically sound.
Send a message: Find mobile phone service built dialogue channel, even if the missing cell phone SIM card is not inserted, you can still carry on a dialogue with each other.
Intelligent Face capture: After reporting the loss will be smart, open face capture, Time Lapse mobile phone users do not face.
Notes:
Switching topics: new theme switching capabilities, built-in themes, and fonts four different plates.
Search Notes: Add notes searching for a more convenient.
Text Share: Add text form of sharing notes.
Graffiti: Graffiti support directly on the drawing board.
Automatic numbering: support number automatically created when editing notes.
Recording Animation: Animation recording new record is inserted.
Desktop plug-in: plug-in supports fast new recordings and photographs, support for displaying the contents of all notes.
Sketchpad:
Color: Add more preset color.
User Center:
New Independent User Center App.
User level: New user rating system, to enhance the level to get more privileges.
Supplementary Information: Support Extended user details.
Integral Center: new integration center to support exchange gifts, earn points, points sweepstakes.
Information:
Column Category: Home columns support the classification display, browsing more convenient.
Data Fusion: Fusion feeds data under the same section, read more peace of mind.
Interactive adjustment: Adjust Subscription Center, individual centers, the article details the interaction.
Weather:
Interface: The new weather interface, you can see more content in the home.
Share: A long way to share detailed weather information Screenshot.
Urban management: direct display of weather information in different cities in the urban management interface.
Weather warnings: New weather warning function to support and friends to share early warning information.
Domestic services:
Cinema Movies: online seat selection introduces the new movie and the upcoming movie details, the new movie stills View.
Travel: New hotels and airfare booking function.
Calendar:
Constellation almanac: Support Calendar Home View constellations and almanac information.
Event Suspension Ball: New event suspension ball, quick to create a new event.
Calendar projection device: New Calendar projections, supports date projections, interval estimation and public Lunar conversion.
Interval Display: Click on any date, the number of days in the calendar left corner Quick View.
Notification: Permanent cancellation notification bar notification, slide cancel.
Game Center:
Online content: the game details page to increase the game Raiders, evaluation, information, video, and other content packs.
Micro-channel sharing: sharing style micro-channel optimization.
Mail:
Account Settings: Press the mailbox type to add new accounts automatically configure account information.
Gestures Zoom: Theme card supports gestures to zoom, browse more relaxed details.
Attachment: New Attachment Manager functions, optimizing mail attachment display position.
Search: a substantial increase in search speed, highlight keyword.
YouTube HD Playback
Newer youtube app versions have broken video quality detection. For fixing that problem you need to use a older youtube version. This version is working: http://www.apkmirror.com/apk/google-inc/youtube/youtube-10-14-56-android-apk-download/
Second Method
To fix HD Videos on Youtube all we have to do is:
Thanks to : @Typhus_
Install Latest Youtube App
Open it and see any video (one you know it should be 1080p available but it's stuck at 360p)
Navigate to /data/data/com.google.android.youtube/shared_prefs (use any explorer with root permission)
Open youtube.xml
Find:
Code:
<boolean name="h264_main_profile_supported5.1.1" value="false" />
Replace to:
Code:
<boolean name="h264_main_profile_supported5.1.1" value="true" />
Save the file
Enjoy!
Screen Recording Workaround
Thanks to : Ajit Guraya (www.mtkroms.com)
You can also check it on --> http://www.mtkroms.com/2015/11/fix-bugs-in-all-cyanogenmod-12-roms-mtk.html
Follow the below steps:
1. Download Shou from play store.
2. Sign in/Sign up.
3. Allow root permissions
4. When a popup about allowing screen record comes, just press START and DO NOT CHECK "DO NOT SHOW AGAIN".
5. Click on the floating pink circle
6. Slect Record
7. Enter any file name.
8. Click on Settings.
9. In encoding engine : Select SOFTWARE instead of hardware.
10. Enjoy screen recording.
VPN
thanks to @nervehammer
Follow these step to enjoy VPN in cm builds ..
1. Go to psiphon and choose Browser-Only mode don't tunnel whole device.
2. Go to its logs tab and check the port of http proxy.
3. Now open WiFi setting and long press to your WiFi network (from which u are connected) go to modify tab and from check the advanced options.
4. Chosen manual proxy option and put host name as 127.0.0.1 and port as the no. which you noted in step 2 (eg. 8080) and click save .
Enjoy you have set up a VPN connection successfully.
You can open your browser and check your IP
Note: You have to undo this after you don't need VPN by changing manual proxy to none .
For those who want to use Orbot vpn
This is very similar to previous vpn workaround for psiphon
Just follow these step for Orbot
1. Open Orbot and long press to start orbot.
2. When all bootstrapped done go to check browser it will ask for normal browser or install Orweb .
3. Open Orweb and volla you r connected to tor but actually its not to tunnel your traffic to vpn go to Orweb settings.
4. Now note the proxy host and proxy port generally it is localhost(same as 127.0.0.1) and 8118 respectively but it may change so better to keep updated with port numbers.
5. Now go to wifi setting and long press the wifi (from which u r connected) and check advanced options.
6. Choose manual proxy option and put the host name 127.0.0.1 and port no. (e.g. 8118 ) which u noted in step 4
Now u can check https://check.torproject.org from any browser and volla Congo this browser is configured to use tor.
Sorry for long guide but it is detail enough so that anyone can easily setup tor in cm builds.
Note: You have to undo manual proxy option to none after you don't use vpn.
OBB on SD Card
Use following xposed module
Obb on SD
Module Obb on SD attempts to make it seamless - just enable module, reboot and move obb's to SD card (to same folder: Android/obb) - that's that. No need to enter any path or whitelist/blacklist any app. Do you want to only move Obb from Grand Theft Auto? Then only move that obb. Obb on SD will detect "obb on SD" and enable hooks only for this single game.
http://dl-xda.xposed.info/modules/com.smartmadsoft.xposed.obbonsd_v8_f16a1d.apk
Author(s):
moneytoo
Support/Discussion URL:
http://forum.xda-developers.com/xposed/modules/mod-obb-sd-v0-1-t2884004
Does it work auto rotation?
rantosp said:
Does it work auto rotation?
Click to expand...
Click to collapse
auto rotation working properly
What about GPS??
And 2g/3g switch working properly..?
Any specific bugs..?
stuck on boot (with picture of baloon and sign 'flyme').
i've try to flash it 3 times and 3 times i got stuck (with the instalation instructions).
mickiewicz said:
stuck on boot (with picture of baloon and sign 'flyme').
i've try to flash it 3 times and 3 times i got stuck (with the instalation instructions).
Click to expand...
Click to collapse
Same to me Coolpad f1
what about battery life
---------- Post added at 06:58 PM ---------- Previous post was at 06:57 PM ----------
its fully LP rom or just themed like LP
---------- Post added at 07:07 PM ---------- Previous post was at 06:58 PM ----------
from this thread i can expect miui 7 5.1.1 for a311 or any other custom rom like sony z3 , honnor ,lenovo etc
Or it's support cyanogen themes or not
Sent from my Nitro using XDA-Developers mobile app
mickiewicz said:
stuck on boot (with picture of baloon and sign 'flyme').
i've try to flash it 3 times and 3 times i got stuck (with the instalation instructions).
Click to expand...
Click to collapse
rantosp said:
Same to me Coolpad f1
Click to expand...
Click to collapse
I am looking into issue. It will be solved soon.
rahult2838 said:
Or it's support cyanogen themes or not
Sent from my Nitro using XDA-Developers mobile app
Click to expand...
Click to collapse
This ROM doesn't support CM themes.
stuck at boot screen :/ please provide fix!
Ali_Waris said:
What about GPS??
And 2g/3g switch working properly..?
Any specific bugs..?
Click to expand...
Click to collapse
GPS has no issues.... There is no 2g/3g switch issue on LP based ROMs
mickiewicz said:
stuck on boot (with picture of baloon and sign 'flyme').
i've try to flash it 3 times and 3 times i got stuck (with the instalation instructions).
Click to expand...
Click to collapse
rantosp said:
Same to me Coolpad f1
Click to expand...
Click to collapse
amy1193 said:
stuck at boot screen :/ please provide fix!
Click to expand...
Click to collapse
Links are updated in first post.... Stuck at Flyme logo issue solved now. First boot takes time to boot
bravonova said:
Links are updated in first post.... Stuck at Flyme logo issue solved now. First boot takes time to boot
Click to expand...
Click to collapse
hello I installed the rom but after lavvio crashes when you select the sim for text messages. shows the message (the application setting and locked abnormally) and cell and inutilizabile remains blocked in the configuration
ok, now it stucks at language selection ("unfortunately, setting has stopped' popup).
pitty.
mickiewicz said:
ok, now it stucks at language selection ("unfortunately, setting has stopped' popup).
pitty.
Click to expand...
Click to collapse
yeah, got same error here. Plz fix it:crying:
mickiewicz said:
ok, now it stucks at language selection ("unfortunately, setting has stopped' popup).
pitty.
Click to expand...
Click to collapse
kamathshreyas said:
yeah, got same error here. Plz fix it:crying:
Click to expand...
Click to collapse
I installed ROM multiple times but no such issue faced.... Wipe system, cache and data partition before flashing.....
it stucks when i use yours instalation guide.
after my usuall install sequence i managed to flash it.
now testing.

What is Motivation Description?

How to make your app accessible to users with vision impairment or other physical disabilities.
Your customer base probably includes many people with disabilities, whether you are aware of it or not. According to government figures, one person in five has some functional limitation, and eight percent of all users on the Web have disabilities. In the United States alone there are more than 30 million people with disabilities who can be affected by the design of computer software, and worldwide the number is much higher. Many countries/regions, including the United States, have laws that mandate accessibility at some level.
When it comes to reaching as wide a user base as possible, it's important to pay attention to accessibility in your Android application. Cues in your user interface that may work for a majority of users, such as a visible change in state when a button is pressed, can be less optimal if the user is visually impaired.
This post shows you how to make the most of the accessibility features built into the Android framework. It covers how to optimize your app for accessibility, leveraging platform features like focus navigation and content descriptions. It also covers how to build accessibility services, that can facilitate user interaction with any Android application, not just your own.
Techniques should be applied to solve them:
1. Developing Accessible Applications
Learn to make your Android application accessible. Allow for easy navigation with a keyboard or directional pad, set labels and fire events that can be interpreted by an accessibility service to facilitate a smooth user experience.
Add Content Descriptions
It's easy to add labels to UI elements in your application that can be read out loud to your user by a speech-based accessibility service like TalkBack . If you have a label that's likely not to change during the lifecycle of the application (such as "Pause" or "Purchase"), you can add it via the XML layout, by setting a UI element's android:contentDescription attribute, like in this example:
<Button
android:id=”@+id/pause_button”
android:src=”@drawable/pause”
android:contentDescription=”@string/pause”/>
However, there are plenty of situations where it's desirable to base the content description on some context, such as the state of a toggle button, or a piece selectable data like a list item. To edit the content description at runtime, use the setContentDescription() method, like this:
String contentDescription = "Select " + strValues[position];
label.setContentDescription(contentDescription);
Try to add content descriptions wherever there's useful information, but avoid the web-developer pitfall of labelling everything with useless information. For instance, don't set an application icon's content description to "app icon". That just increases the noise a user needs to navigate in order to pull useful information from your interface.
Try it out! Download TalkBack (an accessibility service published by Google) and enable it in Settings > Accessibility > TalkBack. Then navigate around your own application and listen for the audible cues provided by TalkBack.
Design for Focus Navigation
Your application should support more methods of navigation than the touch screen alone. Many Android devices come with navigation hardware other than the touchscreen, like a D-Pad, arrow keys, or a trackball. In addition, later Android releases also support connecting external devices like keyboards via USB or bluetooth.
In order to enable this form of navigation, all navigational elements that the user should be able to navigate to need to be set as focusable. This modification can be done at runtime using the View.setFocusable() method on that UI control, or by setting the android:focusable attrubute in your XML layout files.
Also, each UI control has 4 attributes, android:nextFocusUp, android:nextFocusDown, android:nextFocusLeft, and android:nextFocusRight, which you can use to designate the next view to receive focus when the user navigates in that direction. While the platform determines navigation sequences automatically based on layout proximity, you can use these attributes to override that sequence if it isn't appropriate in your application.
For instance, here's how you represent a button and label, both focusable, such that pressing down takes you from the button to the text view, and pressing up would take you back to the button.
<Button android:id="@+id/doSomething"
android:focusable="true"
android:nextFocusDown=”@id/label”
... />
<TextView android:id="@+id/label"
android:focusable=”true”
android:text="@string/labelText"
android:nextFocusUp=”@id/doSomething”
... />
Fire Accessibility Events
If you write a custom view, make sure it fires events at the appropriate times. Generate events by calling sendAccessibilityEvent(int), with a parameter representing the type of event that occurred. A complete list of the event types currently supported can be found in the AccessibilityEvent reference documentation.
As an example, if you want to extend an image view such that you can write captions by typing on the keyboard when it has focus, it makes sense to fire an TYPE_VIEW_TEXT_CHANGED event, even though that's not normally built into image views. The code to generate that event would look like this:
public void onTextChanged(String before, String after) {
...
if (AccessibilityManager.getInstance(mContext).isEnabled()) {
sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_TEXT_CHANGED);
}
...
}
Test Your Application
Be sure to test the accessibility functionality as you add it to your application. In order to test the content descriptions and Accessibility events, install and enable an accessibility service. One option is Talkback , a free, open source screen reader available on Google Play. With the service enabled, test all the navigation flows through your application and listen to the spoken feedback.
2. Developing Accessibility Services
Develop an accessibility service that listens for accessibility events, mines those events for information like event type and content descriptions, and uses that information to communicate with the user. The example will use a text-to-speech engine to speak to the user.
Create Your Accessibility Service
An accessibility service can be bundled with a normal application, or created as a standalone Android project. The steps to creating the service are the same in either situation. Within your project, create a class that extends AccessibilityService.
package com.example.android.apis.accessibility;
import android.accessibilityservice.AccessibilityService;
public class MyAccessibilityService extends AccessibilityService {
...
@override
public void onAccessibilityEvent(AccessibilityEvent event) {
}
@override
public void onInterrupt() {
}
...
}
Like any other service, you also declare it in the manifest file. Remember to specify that it handles the android.accessibilityservice intent, so that the service is called when applications fire an AccessibilityEvent.
<application ...>
...
<service android:name=".MyAccessibilityService">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
. . .
</service>
...
</application>
If you created a new project for this service, and don't plan on having an application, you can remove the starter Activity class (usually called MainActivity.java) from your source. Remember to also remove the corresponding activity element from your manifest.
Configure Your Accessibility Service
You have two options for how to set these variables. The backwards-compatible option is to set them in code, using setServiceInfo(android.accessibilityservice.AccessibilityServiceInfo). To do that, override the onServiceConnected() method and configure your service in there. @override
public void onServiceConnected() {
// Set the type of events that this service wants to listen to. Others
// won't be passed to this service.
info.eventTypes = AccessibilityEvent.TYPE_VIEW_CLICKED |
AccessibilityEvent.TYPE_VIEW_FOCUSED;
// If you only want this service to work with specific applications, set their
// package names here. Otherwise, when the service is activated, it will listen
// to events from all applications.
info.packageNames = new String[]
{"com.example.android.myFirstApp", "com.example.android.mySecondApp"};
// Set the type of feedback your service will provide.
info.feedbackType = AccessibilityServiceInfo.FEEDBACK_SPOKEN;
// Default services are invoked only if no package-specific ones are present
// for the type of AccessibilityEvent generated. This service *is*
// application-specific, so the flag isn't necessary. If this was a
// general-purpose service, it would be worth considering setting the
// DEFAULT flag.
// info.flags = AccessibilityServiceInfo.DEFAULT;
info.notificationTimeout = 100;
this.setServiceInfo(info);
}
The second option is to configure the service using an XML file. Certain configuration options like canRetrieveWindowContent are only available if you configure your service using XML. The same configuration options above, defined using XML, would look like this:
<accessibility-service
android: accessibilityEventTypes="typeViewClicked|typeViewFocused"
android: packageNames="com.example.android.myFirstApp, com.example.android.mySecondApp"
android: accessibilityFeedbackType="feedbackSpoken"
android: notificationTimeout="100"
android: settingsActivity="com.example.android.apis.accessibility.TestBackActivity"
android: canRetrieveWindowContent="true"
/>
If you go the XML route, be sure to reference it in your manifest, by adding a <meta-data> tag to your service declaration, pointing at the XML file. If you stored your XML file in res/xml/serviceconfig.xml, the new tag would look like this:
<service android:name=".MyAccessibilityService">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
<meta-data android:name="android.accessibilityservice"
android:resource="@xml/serviceconfig" />
</service>
Respond to AccessibilityEvents
Now that your service is set up to run and listen for events, write some code so it knows what to do when an AccessibilityEvent actually arrives! Start by overriding the onAccessibilityEvent(AccessibilityEvent) method. In that method, use getEventType() to determine the type of event, and getContentDescription() to extract any label text associated with the view that fired the event. @override
public void onAccessibilityEvent(AccessibilityEvent event) {
final int eventType = event.getEventType();
String eventText = null;
switch(eventType) {
case AccessibilityEvent.TYPE_VIEW_CLICKED:
eventText = "Focused: ";
break;
case AccessibilityEvent.TYPE_VIEW_FOCUSED:
eventText = "Focused: ";
break;
}
eventText = eventText + event.getContentDescription();
// Do something nifty with this text, like speak the composed string
// back to the user.
speakToUser(eventText);
...
}
Query the View Heirarchy for More Context
This step is optional, but highly useful. The Android platform provides the ability for an AccessibilityService to query the view hierarchy, collecting information about the UI component that generated an event, and its parent and children. In order to do this, make sure that you set the following line in your XML configuration:
android:canRetrieveWindowContent="true"
Once that's done, get an AccessibilityNodeInfo object using getSource(). This call only returns an object if the window where the event originated is still the active window. If not, it will return null, so behave accordingly. The following example is a snippet of code that, when it receives an event, does the following:
.Immediately grab the parent of the view where the event originated
.In that view, look for a label and a check box as children views
.If it finds them, create a string to report to the user, indicating the label and whether it was checked or not.
.If at any point a null value is returned while traversing the view hierarchy, the method quietly gives up.
// Alternative onAccessibilityEvent, that uses AccessibilityNodeInfo @override
public void onAccessibilityEvent(AccessibilityEvent event) {
AccessibilityNodeInfo source = event.getSource();
if (source == null) {
return;
}
// Grab the parent of the view that fired the event.
AccessibilityNodeInfo rowNode = getListItemNodeInfo(source);
if (rowNode == null) {
return;
}
// Using this parent, get references to both child nodes, the label and the checkbox.
AccessibilityNodeInfo labelNode = rowNode.getChild(0);
if (labelNode == null) {
rowNode.recycle();
return;
}
AccessibilityNodeInfo completeNode = rowNode.getChild(1);
if (completeNode == null) {
rowNode.recycle();
return;
}
// Determine what the task is and whether or not it's complete, based on
// the text inside the label, and the state of the check-box.
if (rowNode.getChildCount() < 2 || !rowNode.getChild(1).isCheckable()) {
rowNode.recycle();
return;
}
CharSequence taskLabel = labelNode.getText();
final boolean isComplete = completeNode.isChecked();
String completeStr = null;
if (isComplete) {
completeStr = getString(R.string.checked);
} else {
completeStr = getString(R.string.not_checked);
}
String reportStr = taskLabel + completeStr;
speakToUser(reportStr);
}
Now you have a complete, functioning accessibility service. Try configuring how it interacts with the user, by adding Android's text-to-speech engine, or using a Vibrator to provide haptic feedback!
3. Accessibility Checklist
Learn how to test your app for accessibility.
Testing Accessibility Features
Testing of accessibility features such as TalkBack, Explore by Touch and accessibility Gestures requires setup of your testing device. This section describes how to enable these features for accessibility testing.
Testing audible feedback
Audible accessibility feedback features on Android devices provide audio prompts that speaks the screen content as you move around an application. By enabling these features on an Android device, you can test the experience of users with blindness or low-vision using your application.
Audible feedback for users on Android is typically provided by TalkBack accessibility service and the Explore by Touch system feature. The TalkBack accessibility service comes preinstalled on most Android devices and can also be downloaded for free from Google Play.
Testing with TalkBack
The TalkBack accessibility service works by speaking the contents of user interface controls as the user moves focus onto controls. This service should be enabled as part of testing focus navigation and audible prompts.
To enable the TalkBack accessibility service:
Launch the Settings application.
Navigate to the Accessibility category and select it.
Select Accessibility to enable it.
Select TalkBack to enable it.
Note: While TalkBack is the most available Android accessibility service for users with disabilities, other accessibility services are available and may be installed by users.
Testing with Explore by Touch
The Explore by Touch system feature is available on devices running Android 4.0 and later, and works by enabling a special accessibility mode that allows users to drag a finger around the interface of an application and hear the contents of the screen spoken. This feature does not require screen elements to be focused using an directional controller, but listens for hover events over user interface controls.
To enable Explore by Touch:
Launch the Settings application.
Navigate to the Accessibility category and select it.
Select the TalkBack to enable it.
Note: On Android 4.1 (API Level 16) and higher, the system provides a popup message to enable Explore by Touch. On older versions, you must follow the step below.
Return to the Accessibility category and select Explore by Touch to enable it.
Note: You must turn on TalkBack first, otherwise this option is not available.
Testing focus navigation
Focus navigation is the use of directional controls to navigate between the individual user interface elements of an application in order to operate it. Users with limited vision or limited manual dexterity often use this mode of navigation instead of touch navigation. As part of accessibility testing, you should verify that your application can be operated using only directional controls.
You can test navigation of your application using only focus controls, even if your test devices does not have a directional controller. The Android Emulator provides a simulated directional controller that you can use to test navigation. You can also use a software-based directional controller, such as the one provided by the Eyes-Free Keyboard to simulate use of a D-pad on a test device that does not have a physical D-pad.
Testing gesture navigation
Gesture navigation is an accessibility navigation mode that allows users to navigate Android devices and applications using specific gestures. This navigation mode is available on Android 4.1 (API Level 16) and higher.
Note: Accessibility gestures provide a different navigation path than keyboards and D-pads. While gestures allow users to focus on nearly any on-screen content, keyboard and D-pad navigation only allow focus on input fields and buttons.
To enable gesture navigation:
Enable both TalkBack and the Explore by Touch feature as described in the Testing with Explore by Touch. When both of these features are enabled, accessibility gestures are automatically enabled.
You can change gesture settings using Settings > Accessibility > TalkBack > Settings > Manage shortcut gestures.
Note: Accessibility services other than TalkBack may map accessibility gestures to different user actions. If gestures are not producing the expected actions during testing, try disabling other accessibility services before proceeding.

Questions about teleporting

Recently I have decided to create a VR application just to test out different features (Mainly just teleportation). I have however bumped into a problem. While trying to teleport to places the controller will sometimes glitch up to indicate that I will be teleporting on top of a wall. I was wonder, what would be the best method of creating a teleportation method where you can't teleport behind walls and you can't teleport on top of them. I know what my problem is it's that I have a collision box on my walls but I want to have it so you can't teleport through the walls. I'm a beginner with Unity and this is probably whey I can't find a way to fix it.
Information:
Application : Unity 5.6.1f1
Teleportation Method : Google's elements teleportation. (Open the Google element's teleportation scene and added my own objects)
Current form of collision : Mesh collider the shape of my objects
Screen shot labels
1. House model with textures
2. Highlighted collision meshes
3. The area I get problems (When pointing the controller at any wall it will move the teleportation marker to the top of the wall)
If you need a copy of my Unity Project, just download it here, extract it and open the scene "Nevis" in the folder "Nevis" while in Unity. (File will be available in a 4-8 hours because my internet connect is super slow)
https://drive.google.com/drive/folders/0B_esR0mIq50vVVBEeFcxZ3F5YWs?usp=sharing
I know the texturing work isn't great and my lighting is strange but this is just a test of the teleportation system.

Categories

Resources