June 13, 2016
CS442 Project Final Presentation
T0303
Bohun Seo, Hayeon Lee, Insu Jang
Introduction
3 / totalS.U.N.S.H.I.N.E.
Introduction
At Last!
4 / totalS.U.N.S.H.I.N.E.
Introduction
What is sunshine?
Prevent temptations
by
Providing flexibility and motivation
to
Enhance user’s efficiency of study
5 / totalS.U.N.S.H.I.N.E.
Introduction
What is sunshine?
To activate sunshine mode.
User just presses the button. Pre-configuration is unnecessary.
6 / totalS.U.N.S.H.I.N.E.
Introduction
What is sunshine?
In sunshine mode, launcher is changed
7 / totalS.U.N.S.H.I.N.E.
Introduction
What is sunshine?
Allowed apps can only be used basically
This classification is performed automatically by app’s category
8 / totalS.U.N.S.H.I.N.E.
Introduction
What is sunshine?
User can use our dedicated browser in sunshine mode to search.
Our browser performs semantic analysis and blocks page by category.
FFT in wikipedia Overwatch review
9 / totalS.U.N.S.H.I.N.E.
Introduction
What is sunshine?
User can acquire the points by remaining the sunshine mode
User consumes points for two purposes
Level up
Use blocked apps
Sunshine Components
1. Overall Feature
2. System Service
3. Dedicated Launcher
4. Dedicated Browser
11 / totalS.U.N.S.H.I.N.E.
Overall Feature
On Nexus 6
With AOSP 5.1 lollipop
12 / totalS.U.N.S.H.I.N.E.
Overall Feature
Other System Services
(Modified)
PAService
Dedicated
Browser
Dedicated
Launcher
(Sunshine mode)
framework
Others
Launchers
(Normal mode)
user
All appsBlocked
apps
Allowed
apps
Search
Server
Search
Server
PhoneInternet
full functionalities
limited functionalitiesRequest/Respond
Control other services
Semantic analysis
Play
PlayApp categorizing
13 / totalS.U.N.S.H.I.N.E.
System Service
System Service - Architecture
PAService
(API provider)
PackageManagerService
(App visibility control)
ActivityManager
(App execution control)
NotificationManagerService
(Notification control)
ActivityStack
(Foreground app control)
AppInfoManager
(Blocked / Allow apps
management)
AsyncCategorizing
(Update App’s Category )
PhoneWindowManager
(Launcher init control)
14 / totalS.U.N.S.H.I.N.E.
System Service
System Service – App categorizing
PAServicePackageManagerService
AppInfoManager
AsyncCategorizing
1. Application Installed
2. Request3. Finish callback
4. Save
App categorizing is performed only once per app
15 / totalS.U.N.S.H.I.N.E.
System Service
System Service – App categorizing
com.android.mms
(communication?)
com.concentriclivers.
mms.com.android.m
ms
Communication
Find the most similar app and use that category
Categorize app with exact package name
If it doesn’t exist, use similar name
16 / totalS.U.N.S.H.I.N.E.
System Service
System Service – Block Policy
Use pre-defined category tables
Exclude categories of unfamiliar with study
17 / totalS.U.N.S.H.I.N.E.
System Service
System Service – Exploiting App-related function call
PackageManagerService
ActivityManagerService
startActivity..
startActivity.. resolveIntent
queryIntentActivities
getInstalledApplications
Intent to specific Info by priority
ActivtyStackSupervisor
startActivityLocked
API call from general situations
Query from others
Execution Control
App visibility control
- Launcher selection
- Hide our apps
Instantiate Task and Load it Stack
“Rise above the storm,and you will find the sunshine.”