-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathREADME
116 lines (72 loc) · 5.19 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
MythTV Android Frontend
Implementation of MythTV 0.25-0.27 Services API for Android.
http://www.mythtv.org/wiki/Services_API
What is the Services API (from the above wiki link)
========================
The Services API is a new set of APIs (Application Programming Interfaces) taking the place of MythXML in MythTV versions .25 and later. It is an extremely featureful set of interfaces designed to allow one to configure MythTV, access MythTV content, control your DVR, use MythTV as a service in your own applications, and otherwise make MythTV accessible to any and everyone.
The Services API uses regular HTTP POST and GET commands, and can return both JSON and XML output by setting the HTTP accepts header appropriately.
The Services API is organized into services, which are logical groupings of APIs by their function and purpose. The individual methods contained in each service are documented on the service's wiki page.
Build Environment
=================
For instructions on how setup the build environment for this application, please see the following:
https://github.com/MythTV-Clients/MythTV-Android-Frontend/wiki/Development-Environment-Setup
Explaination of Android Permissions
===================================
- android.permission.INTERNET
Allows applications to open network sockets.
Required to allow the application to connect to the Mythtv Master backend.
- android.permission.ACCESS_NETWORK_STATE
Allows applications to access information about networks
Required to allow the application to connect to the Mythtv Master backend.
- android.permission.ACCESS_WIFI_STATE
Allows applications to access information about Wi-Fi networks
Required to allow the application to connect to the Mythtv Master backend.
- android.permission.CHANGE_WIFI_MULTICAST_STATE
Allows applications to enter Wi-Fi Multicast mode
Used by Mythmote WOL to allow waking up a frontend if it has been shut down (currently not implemented, but will be carried over from legacy standalone app).
- android.permission.WRITE_EXTERNAL_STORAGE
Allows an application to write to external storage
Data such as that retrieved from the Mythtv Master backend or artwork images need to be stored in the applications cache area, usually on an external SD Card.
- android.permission.READ_PHONE_STATE
Allows read only access to phone state.
Mythmote will READ your phone state when connected to a MythTV frontend and if a call comes in, will send Caller ID information the frontend to display in a popup.
- android.permission.WAKE_LOCK
Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming
Mythmote uses this to prevent you from having to continually power on the device in order to perform operations. The device will dim the screen and wake up on a touch.
Connecting to Mythtv Backend via SSH
====================================
If you want to use this app on a cellular network, take a look at these instructions for accessing the backend while not on the home wifi network:
https://github.com/MythTV-Clients/MythTV-Android-Frontend/wiki/Access-MythTV-Master-Backend-via-SSH
Prepare repository for release
==============================
The following instructions prepare the code in the repository for release to the Google Play Market
`mvn release:clean -Dgpg.passphrase=[passphrase]`
`mvn release:prepare -Dgpg.passphrase=[passphrase]`
This tags the repository at a point in time where it can be reverted for testing issues reported from the Google Play Developer Console.
====================================
Mythtv Android Frontend and Zeroconf
====================================
Please see the section titles: What are the requirements for Mythtv for Android and Zeroconf?
in https://github.com/MythTV-Clients/MythTV-Android-Frontend/wiki/FAQ
Running MythTV Android Frontend in an emulator (and examining the database)
===========================================================================
1. In eclipse, open the Android Virtual Device Emulator.
start the emulator.png<https://docs.google.com/file/d/0B4KM23cDPRz_bEk2clY0bGl2Sjg/edit>
2. Create a new AVD, if one doesn't already exist. There are now profiles
for most nexus devices on there.
3. Start the AVD.
android virtual device manager.png<https://docs.google.com/file/d/0B4KM23cDPRz_a2ZQUGw2TnpRNnc/edit>
4. In Eclipse, right-click the root of the Mythtv for Android app and
select Run As -> Android Application, Select the AVD if prompted.
5. Let the app install and download all the data. You will need to create
an Away profile with the IP address of one of your backends.
emulator running.png<https://docs.google.com/file/d/0B4KM23cDPRz_X3podlVGRHRHSTA/edit>
5. In eclipse, switch to the DDMS perspective.
start ddms.png<https://docs.google.com/file/d/0B4KM23cDPRz_X2g4V3U1czNnSms/edit>
6. Select the emulator instance on the left.
7. Navigate down to data/data/org.mythtv/databases on the right pane in the
file browser.
location of db.png<https://docs.google.com/file/d/0B4KM23cDPRz_U0NzbVZvdDN5ZVE/edit>
8. Select the Pull a file from device button in the top right-corner of the
file browser. You can use sqlitebrowser to examine the database. Use your
distribution's package manager to get a copy of sqlitebrowser.