Giter Club home page Giter Club logo

prey-android-client's Introduction

Prey: Android client

Here you will find all the source code for the current and in development releases of the Prey client for Android devices.

Prey is the most complete anti-theft application! It lets you track and locate your lost or stolen device. Locate and recover your device with geolocation and many more features.

Prey is a freemium web service for tracking and monitoring laptops, smartphones and other electronic devices, based on an open-source software agent that connects to a host computer, also referred to as the control panel. The host can signal the agent, prompting it to reply with information about its current location, and can trigger various other actions.

Features

  • Find your Phone or Tablet on a map through geolocation using GPS.
  • Take pictures using the built-in front and back camera.
  • Trigger a loud alarm remotely even if your phone is put on silent.
  • Display a tailored alert message on the screen.

Requirements

  • Android Studio 1.0
  • Android 2.3+

Contact

Follow Prey Project on Twitter (@PreyProject)

Authors

Legal

Copyright © 2010-2016, Prey Inc. Released under the GPLv3 license. For full details see the LICENSE file included in this distribution.

prey-android-client's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

prey-android-client's Issues

prey not sending sms to any contact !!

Hello,
when i choose a contact and it ask for "send an msg to contact" i try sending message.. but i get reply "Does your device not support sms service ?" crap ???

how come.. can anyone tell me a fix for this ? i was using master package making bit upgrade to it.. ;)

waiting for some help.

Auto-enable mobile data network

Hi, this is a feature request, not a real issue.

Prey should be able to auto-connect to mobile data network upon activation.

Imagine you lost your phone in a place without wifi (happens to me all the time). Chances are that a mobile network is available, since it is almost omnipresent these days.

According to this thread (http://stackoverflow.com/questions/8354530/how-to-enable-data-connection-on-android-2-3) it is possible to programmatically enable/disable mobile network without user intervention on android up to 2.3 (probablly any android version too).

PS: Sorry for not submiting a patch. Right now I'm on a trip with no access to my development environment.

picking hero phone #

picking contact does not allow to choose between contact phone numbers (annoying since prey insisted on sending sms to a landline number...)

Problem with "Contact to Notify" function during initial software setup

I just installed Prey on my LG Nitro (P930) Android (4.0.4) phone. The phone has not been modified or rooted.

When selecting a "Contact to Notify", the software directs you to the Android Contacts app to select a number. Once you select a contact, it returns and attempts to verify the number. If your contact has more than one number, it is not smart enough to select the one labeled "Mobile". In my case, it is selecting the "Office" number. There is no way to override it. The forum has nothing on this.

It appears that the only way around it is to set up a separate contact with only one number.

The preferred solution would be to allow phone number selection when multiple phone numbers are present. It is possible that a contact might have more than one mobile number.

Has anyone had a similar experience?

Bob

Force Close Samsung Galaxy S3 Android 4.1.1

Having changed my sim on my S3, Prey functioned correctly and created a missing report, contacted my chosen number and notified me by email.

As soon as Prey activated it generated a FC message making it easy for someone to disable Prey as it becomes obvious that it is installed.

There's no way to allow two (or more) 'valid' SIMs - if you live in two countries and alternate between SIMs...

I live in two countries, and often travel between the two. I have two mobile numbers (...two sim cards), one for each country so that I don't waste money ramping up roaming charges (especially when one wants to use data).

I installed prey on my android, and every time I go to the second country and put the other sim in, it unnecessarily thinks that it's been stolen and goes into 'missing' mode.

I have unticked "Warn on SIM change" in the android app settings for now, but this then turns off that useful feature (when it really happens).

Can there be added a way in the app or online account, to allow x amount of specified SIM cards to all be marked as 'valid' (and not just the current one)?

Thanks.

web interface says -1 reports

Screenshot: http://bildr.no/view/1198790

What I did (if I recall correctly): marked device as missing, waited until it had reported once, marked unmissing, deleted the report. Should say 0 (and it does if I click the Reports tab, just not when in the Main tab)

System: Ubuntu 12.04 (note: the highest I could select in the drop-down on the web was 11.10 or something, that drop-down really needs to be updated), prey version 0.5.3-7

Android Lock Screen Password Input Limited to 16 chars, but online control panel is not

Steps to reproduce:

  • Enter a lock password in Prey online control panel of 17+ chars
  • Trigger "missing" event
  • Wait for phone to lock and present lock screen
  • Type in the long password into lock screen

What should happen

  • Should be able to type in the whole password
  • Phone should enable

What actually happens

  • Only first 16 chars of password can be typed in
  • Phone does not unlock due to invalid password

Suggested fixes:

  1. Limit online control panel password field to 16 chars
  2. Remove 16 char limit from android lock field
  3. Validate long password if first 16 chars match

Workarounds:

  • In control panel, reset device status to "found"
  • Remove lock screen option
  • Trigger a new "missing" event
  • Phone should unlock

Either the Lock screen or Message on Android, but not both; plus message only displayed once

Hello and thanks for the great app.

I have tested this app with my Samsung I927 Android smart-phone, to find that either the Lock screen OR the Message screen is displayed, and it is almost always the lock screen, but never both, which seems like the way it should be.

Also, when I attempted to only use the message so that the person with the device can return it, the message is only displayed once. It seems like once may not be enough, especially if you accidentally swipe the screen away to attempt to call the number or something similar.

Perhaps it would be useful to display the message indefinitely every 30 minutes or something like that until marked OK. Plus hopefully this would solve the issue of not displaying the message when the lock is active. Thanks again.

obsolete API for GCM

Hi,
you using obsolete C2D API to send push notification messages on android. How about to include Google Play Service lib for this ?

Blackberry Playbook

Hey,
I have just a kind request. Would it be possible to make a Blackberry version of Prey? I think it couldn`t be very difficult, but to be true I have not a hunch.

Build failures x10: missing FileConfigReader

Several build errors caused by missing FileConfigReader class:

[javac] /home/all/SourceCode/prey/android-client/src/com/prey/PreyConfig.java:344: cannot find symbol
[javac] symbol  : variable FileConfigReader
[javac] location: class com.prey.PreyConfig

libGoogleAnalytics.jar

Consider removing this library.

  1. There is not a clear reference to the license of the library (either in https://developers.google.com/analytics/) I still doubt if free : (

  2. Let us avoid tracking what users do with our applications. Privacy... is a human right.

¡Free as in freedom!

P.D. Consider adopting: Free (freedom) / Open source anti-theft solution for laptops, phones & tablets ¡This software is wonderful! : )

publish on f-droid market

http://f-droid.org
"The F-Droid Repository is an easily-installable catalogue of FOSS (Free and Open Source Software) applications for the Android platform. The server contains the details of multiple versions of each application, and the Android client makes it easy to browse, install them onto your device, and keep track of updates."

it also has some discussion about prey and possible issues in making it available there:
http://f-droid.org/forums/topic/prey/

Prey not sending reports

I'm using a kraun tablet with android 2.2

If I send the activation sms prey seems to read it and logs

02-29 12:21:38.005: I/PREY(2028): SMS received: GO PREY
02-29 12:21:38.005: I/PREY(2028): EmuSms
02-29 12:21:38.015: I/PREY(2028): SMS Match!, waking up Prey right now!

EmuSms is the app I've used to simulate the SMS message (the tablet has any SIM installed at the moment)

Device is marked as missing in the control panel and I receive the confirmation email but no report are generated or sent even after waiting some hours

if I try to manually activate prey using the in-app menu option logcat receives this:

02-29 12:24:24.185: E/PREY(2028): Error while running job [1212142608] :Thread was intrrupted. Finishing Location NotifierAction
02-29 12:24:24.185: E/PREY(2028): com.prey.PreyException: Thread was intrrupted. Finishing Location NotifierAction
02-29 12:24:24.185: E/PREY(2028): at com.prey.actions.location.LocationNotifierAction.execute(LocationNotifierAction.java:90)
02-29 12:24:24.185: E/PREY(2028): at com.prey.actions.observer.ActionJob.run(ActionJob.java:81)
02-29 12:24:24.185: E/PREY(2028): at java.lang.Thread.run(Thread.java:1096)
02-29 12:24:24.185: E/PREY(2028): Caused by: java.lang.InterruptedException
02-29 12:24:24.185: E/PREY(2028): at java.lang.VMThread.sleep(Native Method)
02-29 12:24:24.185: E/PREY(2028): at java.lang.Thread.sleep(Thread.java:1306)
02-29 12:24:24.185: E/PREY(2028): at java.lang.Thread.sleep(Thread.java:1286)
02-29 12:24:24.185: E/PREY(2028): at com.prey.actions.location.LocationNotifierAction.execute(LocationNotifierAction.java:88)
02-29 12:24:24.185: E/PREY(2028): ... 2 more

device is marked as missing in the control panel but again no reports are generated.

Keyboard entry on myTouch 3G Slide running Cyanogenmod 7 registers incorrect key presses

When registering to use Prey on Android 2.3.3 (via the Cyanogenmod 7.0.3 ROM) on the myTouch 3G Slide using the built-in hardware keyboard, keypresses on the number row at the top do not register correctly. For example, if I press "8" I get "4." This is consistent, no matter which number is pressed. It is counter to expectations and not what happens in other apps (though I have seen it in betas before). The solution is to hit the function key first; then the correct number is registered; however, you cannot while in this app hit function twice to stay in the function mode. You must hit function then the number, then function and the next number, etc.

T-Mobile myTouch 3G Slide
Android 2.3.3, via Cyanogenmod 7.0.3-Slide
Kernel version 2.6.32.17-cyanogenmode-g46ca326
Build number GRI40

(also posted this elsewhere, but this seems like the best place for this)

Able to access prey config on android without password

When I access the prey configuration via the normal way on my Galaxy S2 it asks me for my prey password as expected. When I exit the the app, I am still able to re-enter it when I "switch" back to it (as in, I keep the "home" button pressed to see a list of recently used apps and re-enter it from there) it does not ask me for my password, I simply am back at the configuration screen. This does not happen when I run it the "normal" way again.

I am running Android 4.0.3

Unlocking Prey disables my normal PIN entry

originally posted by @theberengersniper here

I installed Prey for the first time last night and, curious to try it, I marked the phone as lost and locked it out. Entering the correct pass code unlocks the handset again as expected, however I now find that my normal PIN entry prompt has been disabled.

I guess Prey must somehow use the same feature to prompt the user for entry of the Prey pass code and therefore overwrites my custom one, but I still find this an annoying lapse in security. For example, entering my PIN has become second nature to me to the point where it actually took me a while to realize that Prey had disabled it!

Phone: HTC Desire HD
OS: Android 2.3.3

Importing into Eclipse

I don't know where else to post this, but anyway, I am trying to import this project into Eclipse (I thought I would try to debug a crash myself). So after spending about an hour getting the app to run (involving some weird stuff like renaming folders which worked, for some reason), the app now runs, but crashes at an even earlier point (after entering username & password). Logcat is not very helpful (http://pastebin.com/kQi8rpFV)

Passwords stored in plaintext in com.prey_references.xml

The preferences PREFS_ADMIN_DEVICE_REVOKED_PASSWORD, PASSWORD, UNLOCK_PASS store passwords in plaintext. Please encrypt these, using one-way hashes like sha1 if possible. Particularly, the file seems to contain enough information to log in to my prey account. And if someone uses the same password for prey.com as the email they use to log in, that email address is right there too.

This file can probably be opened by root only, but root access on an android device is usually a matter of selecting "allow" - or not doing anything at all if the app was used before. So basically, anyone smart enough who steals my phone could avoid changing the SIM card (so prey doesn't activate itself), read that file, get the password, and detach prey / uninstall it / take over my prey account. Fun.

(Of course this previous argument isn't very valid since root access with no auth also lets you remove prey with a rm and maybe a kill. Or factory reset right after stealing it, no root or passwords required. The fact that it's trivial to identify that a phone runs prey annoys me too. But I digress, this ticket isn't meant to cover all of my paranoia sources.)

FR: Prey should enable GPS or Wifi-location on activation

I was about to uninstall Prey because I couldn't get it to send reports nor lock the screen/sound the alarm/show the message, even though the SMS came through and the device was reported as missing. Then I tried turning on GPS, and suddenly everything worked.

I'd prefer to keep GPS off to save battery and Wifi-location off for privacy, but then I won't get reports when my phone is stolen. Shouldn't Prey be able to turn on GPS/Wifi-location of its own accord? It already has admin privileges …

SIM change produces crash

This is actually #239 from the Bash client's issue tracker. Just copying here so it gets the attention it deserves:

package name; com.prey
discription: crushed when sim card changed
package version: 32
package version name 0.5
installed by ; com.google.android.feedback
process name; com.prey
time friday 16 december 2011
systemm app false

device legend
build id GWK74
build type user
model legend
product htc_legend
sdk version 10
release 2.3.7
incremental version eng.rmcc.20111010.021938
codename rel
board legend
brand htc
running applications
com.google.android.feedback
com.android.launcher
com.levelup.beautifulwidgets
com.android.inputmethod.latin
com.google.process.gapps
system
com.android.phone
com.cyanogenmod.cmparts
net.cactii.flash2
com.android.music
com.google.android.apps.genie.geniewidget
com.android.settings
android.process.media
com.cruleanstudios.trillian.android
net.sbsh.store.phoneweaver
com.android.vending
ru.org.amip.clocksync
com.android.voicedialer
com.koushikdutta.rommanager
android.process.acore
com.android.mms
com.android.email
com.android.deskclock
mobi.mgeek.tunnybrowser:dolphin notification
com.bel.android.dspmanager
com.android.systemui

exception class name
java.lang.runtimeexception
source file handler.java
source class android.os.handler
source method 
line number 121
stack trace
java.lang.exceptionininitializerError
at com.prey.net.preyWebServices.SetMissing(preyWebservices.java:275)
at com.prey.actions.ActionsRunner$ActionsRunner run(ActionsRunner.java:72)
at java.lang.thread.run(thread.java:1019)
caused by: java.lang.runtimeException:Cant create handler inside thread that has 
not called looper.prepare()
at android.os.handler.(handler.java:121)
at android.os.asynctask$InternalHandler.(asynctask.java:421)
at android.os.asynctask$internalhandler.(Asynctask.java:421)
at android.os.asynctask.(asynctask.java:152
...3 more)

No photos when phone marked missing

My phone, Virgin HTC EVO 4, when marked missing sends location report, but no images.

Model #: PG86100
Android version: 4.0.3
HTC Sense: 3.6

On activation prey disables normal PIN entry

I installed Prey for the first time last night and, curious to try it, I marked the phone as lost and locked it out. Entering the correct pass code unlocks the handset again as expected, however I now find that my normal PIN entry prompt has been disabled.

I guess Prey must somehow use the same feature to prompt the user for entry of the Prey pass code and therefore overwrites my custom one, but I still find this an annoying lapse in security. For example, entering my PIN has become second nature to me to the point where it actually took me a while to realize that Prey had disabled it!

Phone: HTC Desire HD
OS: Android 2.3.3

Can't log in after email change

I first signed up with one email address, then found I wanted to change it (so the Prey emails don't dump into my inbox on my phone, letting a thief read them). I changed it from the web interface, and then when I tried logging into Prey on my phone, it said "wrong password".

Changing the email address back in the web interface allowed me to log in again from my phone. Perhaps the phone could log in with some user-id that's permanent, regardless of email changes?

Password validation fails complex passwords.

There is a bug in the android app that prevents me from logging in using a long, complex password with a mixture of upper and lower case letters, numbers and symbols (but no spaces).
I don't know at which point exactly the validation fails, but setting the following password on your prey account will prevent you from logging into the android app: TV!dU9axE3f!Af28W3G$cADstWyQkfcv (don't worry, I've changed my password before posting).

Short, easy to remember (and thus crack) passwords work without issues.

SMS is sent on every boot

GT-I9300
Android 4.0.4
Kernel 3.0.15-928452

I'm tried "Active SIM detection". Set sms to my friend number just for try. I changed my sim to different operator laterly. Now on every boot it send sms to my friend phone.
Warn on SIM change is disabled
Contact to notify is dimmed
Assign to current SIM is not working.

FileConfigReader.java error

Hi;
I want to compile source code of prey android.But when I imported to eclipse for test ,I encountered error on FileConfigReader.java file.

InputStream is = ctx.getResources().openRawResource(R.raw.config);

There isn't "config" field in raw file.
How can I solve this problem ?

DUAL SIM: Device marked as lost upon reboot with 1 active SIM

When running the android client on a DUAL SIM (tested on Acer E350), the device is automatically marked as lost and a SIM replacement message is sent upon every restart. This only happens when only 1 SIM is inserted in the device, instead of 2.

Standalone mode

It would be nice if Prey for Android had the standalone mode too. I have the check pages of my other devices on GitHub pages and it would be easier to manage all devices if they all were at same place.

Prey force disable silent mode

This comes from prey-bash-client:

"Hi, I'm using Galaxy Note 2 with android 4.1.2. Prey keep on disabling my silent mode on my phone. Even my device status is not in missing state."

Reported here just for checking.

Hero selection

When I try to select a hero in my contact list, the first number of this contact is automatically selected (I cannot change it), even if it's a local phone (not a mobile phone).

Also, that would be great to be able to select the email of a contact, to receive an email instead of an SMS notification.

--- Sony Xperia Ray on Android 4.0.4 ---

No reports sent after reboot

Samsung Galaxy S with Android 2.3.

Prey starts sending reports after activation via SMS, however after manual reboot of the phone, it stops to do so.
Another activation SMS resolves the problem.

Prey should remember the status and keep sending reports also after reboot.

Suggestion: Sim change

Hi;
Please make it possible that changing Simcard or even removing simcard report phone as Missed.
Regards

"prey stopped unfortunaltely"

the application I downloaded from Github is giving me exceptions while running it on real device and finally resulting in by saying "prey stopped unfortunaltely".

Kindly check why this exception is occurring.

thankyou in advance

Reset password

I'm facing problems to reset password with DevicePolicyManager on Android 3.0 with Prey code I've downloaded from github, but with apk downloaded from Google Play, everything is OK. Prey version from Google Play seems to be the same as I've downloaded from github, but LogCat shows "java.lang.SecurityException: Permission denial: writing to secure settings requires android.permission.WRITE_SECURE_SETTINGS" when I try to block the device either on emulator or with my Motorola Xoom . How this problem was solved in the Google Play version?

Send location data when phone's battery is about to die (Android, iOS maybe)

As i commented on twitter directly to Tomás https://twitter.com/TCattd/status/256018438403813376

Will be nice to have Prey send a last report, specifically with the current phone's location, when battery charge is low or about to die (maybe with % threshold being an user option).

This idea can be expanded to send a report every time the phone it's powered off by the normal way (hold power button -> power off) before the phone completly powers off... just in case thieve turn it off like normal people do it.

That. Please.

Hope can be implemented in some future ;)

Activation SMS shows up in SMS reader apps

Tested on Cyanogenmod 7.0.3 on HTC Desire and HTC Desire Z/G2.

When the device receives the activation SMS Prey is activated, but the SMS still shows up in the SMS reader to be seen by the phone user (potentially the thief!) giving warning of Prey's operation.

The message can be seen in Android Messaging and Handcent and they notify the user - presumably because the message is sourced by all apps via the SMS API and is in the database.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.