Commit ff199197 authored by Thierry BUGEAT's avatar Thierry BUGEAT

Cordova migration. 1st commit.

parent 9a1d5428
---------------------------------------------------------
# myFeeds 1.4.0 (2015-12-04)
### Severe Bug(s)
- #45 Remove usage of Google Feeds API
---------------------------------------------------------
# Important message 2015.12.02
Due to the usage of deprecated Google Feeds API, versions
of myFeeds prior to 1.3.x no longer works.
Sorry for the inconvenience.
Please download version 1.4.0
---------------------------------------------------------
# myFeeds 1.3.1 (2015-11-24)
### Bug(s)
- Bug in news display when animations are off
---------------------------------------------------------
# myFeeds 1.3.0 (2015-11-24)
### New feature(s)
- #18 Add Tiny Tiny RSS online account
- #36 Add landscape orientation
- #39 Add animation option
### Improvement(s)
- #36 Update settings screen theme
- #37 Update Firefox OS 1.4 theme
- #38 Update Russian translations
- Increase UI performances
### Misc
- #40 Add vibration on buttons next and previous entries
- #35 Add local storage for future desktop version
- #34 Add proxy (The Old Reader) for future desktop version
---------------------------------------------------------
# myFeeds 1.2.0 (2015-10-24)
### New feature(s):
- #13 Add AOL Reader online account
- #30 Export subscriptions as OPML file
- #29 Add Russian language (Thanks to Пётр Жоря)
- #33 Display next & previous news titles at bottom of page
### Improvement(s):
- #32 Count keywords
### Bug(s)
- #31 Display previoulsy loaded images in offline mode
---------------------------------------------------------
# myFeeds 1.1.1 (2015-10-10)
### Improvement(s):
- Update date localization in main entry screen
---------------------------------------------------------
# myFeeds 1.1.0 (2015-10-06)
### New feature(s):
- #9 Add buttons next & previous news
### Improvement(s):
- #6 Update themes icones
- #15 Sort keywords by alphabetical order
- #26 Dates and times localization
- #25 Update subscriptions when application start
- #23 Add GPL licence
- #24 Add copyright in sources files
- #28 Add CHANGELOG file
### Bug(s):
- #7 Bug: Some photos are not displayed
- #27 Incorrect feeds last update date
---------------------------------------------------------
# myFeeds 1.0.1
### Improvement(s):
- Keep scrolling position after synchro
- Load only visibles images
---------------------------------------------------------
This diff is collapsed.
# myFeeds 1.4.0 (2015-12-04): RSS reader for Firefox OS
This project is now hosted by Framasoft.
The main GIT repository URL is now :
https://git.framasoft.org/thierry-bugeat/myFeeds
![myFeeds](http://thierry.bugeat.free.fr/myFeeds/images/myFeeds/features/scope.jpg)
[Visit website for more informations](http://thierry.bugeat.com/myFeeds/)
## How to contribute if you are NOT a developer ?
The easiest way to help me is to contribute to translations. I'm alone and not able to do that by myself. If you are ready to "lost" 1 hour, you can download "app.properties" (locales/en/app.properties) file and send me the result of your translations at the following email: myFeeds(AT)bugeat.com with your firstname and lastname for credits.
## Comment contribuer si vous n'êtes PAS développeur?
La voie la plus simple est de participer aux traductions. Je suis seul et pas capable de faire cela par moi-même. Si vous êtes prêts à "perdre" 1 heure, vous pouvez télécharger le fichier "app.properties" (locales/en/app.properties) et m'envoyer le résultât de vos traductions à l'adresse mail suivante: myFeeds(AT)bugeat.com avec votre nom et prénom pour vous mentionner dans les crédits.
## How to contribute if you are developer ?
This project is now hosted by Framasoft. The Github repository is only a mirror. If you want to contribute, fork this project from url on https://git.framasoft.org/thierry-bugeat/myFeeds. (no registration needed, you can sign in with your Github account)
## Comment contribuer si vous êtes développeur ?
Ce projet est maintenant hébergé par Framasoft. Le dépôt Github n'est qu'un mirroir. Si vous souhaitez contribuer, forkez ce projet depuis l'url https://git.framasoft.org/thierry-bugeat/myFeeds. (l'inscription n'est pas nécessaire et vous pouvez vous connecter avec votre compte Github)
![myFeeds](http://thierry.bugeat.free.fr/myFeeds/images/myFeeds/features/myFeeds-desktop-version.png)
#!/bin/sh
# ============================================================
# --- Get values "version" and "id" from file "config.xml" ---
# ============================================================
VERSION=`cat config.xml| sed -n 's/.*version="\([0-9]\.[0-9]*\.[0-9]*\).*/\1/p'`
ID=`cat config.xml| sed -n 's/.*id="\([a-z]*\.[a-z]*\.[a-z]*\).*/\1/p'`
APP_NAME=myFeeds
# ============================
# --- Build and rename APK ---
# ============================
cordova build android
cp platforms/android/build/outputs/apk/android-debug.apk ${APP_NAME}_${VERSION}.apk
# =============================
# --- Update or Replace APK ---
# =============================
echo ""
echo "Connect your device then..."
read -p "Update APK (u) or Delete and Replace APK (r) ? " choice
case "$choice" in
r|R ) INSTALL=replace;;
u|U ) INSTALL=update;;
* ) exit;;
esac
if [ "$INSTALL" = "replace" ];
then
# Unintall previous version
adb shell pm uninstall -k $ID
# Install APK
adb install ${APP_NAME}_${VERSION}.apk
else
# Update APK
adb install -r ${APP_NAME}_${VERSION}.apk
fi
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.bugeat.myfeeds" version="1.5.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>myFeeds</name>
<description>
RSS & ATOM feeds reader
</description>
<author email="myfeeds@bugeat.com" href="http://thierry.bugeat.com/myfeeds">
Thierry BUGEAT
</author>
<icon src="www/img/logo.png" />
<content src="index.html" />
<plugin name="cordova-plugin-whitelist" spec="1" />
<access origin="*" />
<allow-navigation href="*" />
<access origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
<platform name="firefoxos">
<permission name="systemXHR" privileged="true" description="load data from server" />
</platform>
</widget>
<!--
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
-->
# Cordova Hooks
Cordova Hooks represent special scripts which could be added by application and plugin developers or even by your own build system to customize cordova commands. See Hooks Guide for more details: http://cordova.apache.org/docs/en/edge/guide_appdev_hooks_index.md.html#Hooks%20Guide.
{
"prepare_queue": {
"installed": [],
"uninstalled": []
},
"config_munge": {
"files": {}
},
"installed_plugins": {
"cordova-plugin-whitelist": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-device": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-vibration": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-file": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-network-information": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
},
"cordova-plugin-inappbrowser": {
"PACKAGE_NAME": "com.bugeat.myfeeds"
}
},
"dependent_plugins": {}
}
\ No newline at end of file
<!--
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
-->
# Contributing to Apache Cordova
Anyone can contribute to Cordova. And we need your contributions.
There are multiple ways to contribute: report bugs, improve the docs, and
contribute code.
For instructions on this, start with the
[contribution overview](http://cordova.apache.org/contribute/).
The details are explained there, but the important items are:
- Sign and submit an Apache ICLA (Contributor License Agreement).
- Have a Jira issue open that corresponds to your contribution.
- Run the tests so your patch doesn't break existing functionality.
We look forward to your contributions!
This diff is collapsed.
Apache Cordova
Copyright 2012 The Apache Software Foundation
This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
<!--
# license: Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
-->
# cordova-plugin-device
This plugin defines a global `device` object, which describes the device's hardware and software.
Although the object is in the global scope, it is not available until after the `deviceready` event.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(device.cordova);
}
:warning: Report issues on the [Apache Cordova issue tracker](https://issues.apache.org/jira/issues/?jql=project%20%3D%20CB%20AND%20status%20in%20%28Open%2C%20%22In%20Progress%22%2C%20Reopened%29%20AND%20resolution%20%3D%20Unresolved%20AND%20component%20%3D%20%22Plugin%20Device%22%20ORDER%20BY%20priority%20DESC%2C%20summary%20ASC%2C%20updatedDate%20DESC)
## Installation
cordova plugin add cordova-plugin-device
## Properties
- device.cordova
- device.model
- device.platform
- device.uuid
- device.version
- device.isVirtual
- device.serial
## device.cordova
Get the version of Cordova running on the device.
### Supported Platforms
- Amazon Fire OS
- Android
- BlackBerry 10
- Browser
- Firefox OS
- iOS
- Tizen
- Windows Phone 7 and 8
- Windows 8
## device.model
The `device.model` returns the name of the device's model or
product. The value is set by the device manufacturer and may be
different across versions of the same product.
### Supported Platforms
- Android
- BlackBerry 10
- Browser
- iOS
- Tizen
- Windows Phone 7 and 8
- Windows 8
### Quick Example
// Android: Nexus One returns "Passion" (Nexus One code name)
// Motorola Droid returns "voles"
// BlackBerry: Torch 9800 returns "9800"
// Browser: Google Chrome returns "Chrome"
// Safari returns "Safari"
// iOS: for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See http://theiphonewiki.com/wiki/index.php?title=Models
//
var model = device.model;
### Android Quirks
- Gets the [product name](http://developer.android.com/reference/android/os/Build.html#PRODUCT) instead of the [model name](http://developer.android.com/reference/android/os/Build.html#MODEL), which is often the production code name. For example, the Nexus One returns `Passion`, and Motorola Droid returns `voles`.
### Tizen Quirks
- Returns the device model assigned by the vendor, for example, `TIZEN`
### Windows Phone 7 and 8 Quirks
- Returns the device model specified by the manufacturer. For example, the Samsung Focus returns `SGH-i917`.
## device.platform
Get the device's operating system name.
var string = device.platform;
### Supported Platforms
- Android
- BlackBerry 10
- Browser
- Firefox OS
- iOS
- Tizen
- Windows Phone 7 and 8
- Windows 8
### Quick Example
// Depending on the device, a few examples are:
// - "Android"
// - "BlackBerry 10"
// - Browser: returns "MacIntel" on Mac
// returns "Win32" on Windows
// - "iOS"
// - "WinCE"
// - "Tizen"
var devicePlatform = device.platform;
### Windows Phone 7 Quirks
Windows Phone 7 devices report the platform as `WinCE`.
### Windows Phone 8 Quirks
Windows Phone 8 devices report the platform as `Win32NT`.
## device.uuid
Get the device's Universally Unique Identifier ([UUID](http://en.wikipedia.org/wiki/Universally_Unique_Identifier)).
var string = device.uuid;
### Description
The details of how a UUID is generated are determined by the device manufacturer and are specific to the device's platform or model.
### Supported Platforms
- Android
- BlackBerry 10
- iOS
- Tizen
- Windows Phone 7 and 8
- Windows 8
### Quick Example
// Android: Returns a random 64-bit integer (as a string, again!)
// The integer is generated on the device's first boot
//
// BlackBerry: Returns the PIN number of the device
// This is a nine-digit unique integer (as a string, though!)
//
// iPhone: (Paraphrased from the UIDevice Class documentation)
// Returns the [UIDevice identifierForVendor] UUID which is unique and the same for all apps installed by the same vendor. However the UUID can be different if the user deletes all apps from the vendor and then reinstalls it. Please see https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/#//apple_ref/occ/instp/UIDevice/identifierForVendor
// Windows Phone 7 : Returns a hash of device+current user,
// if the user is not defined, a guid is generated and will persist until the app is uninstalled
// Tizen: returns the device IMEI (International Mobile Equipment Identity or IMEI is a number
// unique to every GSM and UMTS mobile phone.
var deviceID = device.uuid;
### iOS Quirk
The `uuid` on iOS uses the identifierForVendor property. It is unique to the device across the same vendor, but will be different for different vendors and will change if all apps from the vendor are deleted and then reinstalled.
See https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/#//apple_ref/occ/instp/UIDevice/identifierForVendor
The UUID will be the same if app is restored from a backup or iCloud as it is saved in preferences. Users using older versions of this plugin will still receive the same previous UUID generated by another means as it will be retrieved from preferences.
### Windows Phone 7 and 8 Quirks
The `uuid` for Windows Phone 7 requires the permission
`ID_CAP_IDENTITY_DEVICE`. Microsoft will likely deprecate this
property soon. If the capability is not available, the application
generates a persistent guid that is maintained for the duration of the
application's installation on the device.
## device.version
Get the operating system version.
var string = device.version;
### Supported Platforms
- Android 2.1+
- BlackBerry 10
- Browser
- iOS