Intercept/block outgoing sms (using root) - Android Q&A, Help & Troubleshooting

Hi, I want to create an application which intercepts sent sms and shows a dialog eventually performing certain actions before allowing the message to be sent. It's pretty much like "LBE Privacy Guard", but with a different purpose.
Does anybody know how can I catch sms being sent using root and a background service? I have looked on the internet but without success.
Thanks!

Questions or Problems Should Not Be Posted in the Development Forum
Please Post in the Correct Forums & Read the Forum Rules
Moving to Q&A

All I could find was on stackoverflow, but it's functionality is limited to the stock application and perhaps a few more. It doesn't use root.
Code:
<intent-filter>
<action android:name="android.intent.action.SENDTO" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
</intent-filter>
This doesn't intercept applications that use SmsManager directly, and maybe not even then.
The default SMS Application uses android.telephony.SmsManager's method SendDataMessage() that doesn't send any broadcast.
Click to expand...
Click to collapse
http://stackoverflow.com/questions/5808577/android-listen-outgoing-sms-or-sent-box
http://stackoverflow.com/questions/8171783/how-to-do-outgoing-sms-interception-using-ndk
Nobody knows anything? Not even using root?

Related

[FIX] EC09 Stock -- Multitouch Rotate Gesture fix

First off I am a total noob at this stuff but I did manage to fix the problem with multitouch rotate not working on EC09.
You will need root and something like root explorer to edit this file:
/system/etc/permissions/android.hardware.touchscreen.multitouch.distinct
what we need the file to say is this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project
Licensed 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.
-->
<!-- This is the standard set of features for a touchscreen that supports
independently-trackable multiple-finger multitouch. -->
<permissions>
<feature name="android.hardware.touchscreen" />
<feature name="android.hardware.touchscreen.multitouch" />
[b]<feature name="android.hardware.touchscreen.multitouch.distinct" />[/b]
</permissions>
The important part here is adding the last line
Code:
<feature name="android.hardware.touchscreen.multitouch.distinct" />
Save the file, reboot and presto, working multitouch rotate gestures.
Hope this works for people that are early adopters.
Am I missing something here..?
[Neuman]
SCH-I500 - Nameless V4
Any chance for a file that can be ran from CWR to replace the file?
Sent from my SCH-I500 using XDA App
Neuman.Tim said:
Am I missing something here..?
[Neuman]
SCH-I500 - Nameless V4
Click to expand...
Click to collapse
I think what he means is you need to add the line
Code:
<feature name="android.hardware.touchscreen.multitouch.distinct" />
to /system/etc/permissions/android.hardware.touchscreen.multitouch.xml
Then I have to be missing something because I can't see anything in his post to add to the file..literally..its a couple big blank spots lol
[Neuman]
SCH-I500 - EC09(GB)/Nameless V4/Launcher Pro Plus
Neuman.Tim said:
Then I have to be missing something because I can't see anything in his post to add to the file..literally..its a couple big blank spots lol
[Neuman]
SCH-I500 - EC09(GB)/Nameless V4/Launcher Pro Plus
Click to expand...
Click to collapse
Use a different browser?
Using xda premium Lol. I figured something was up but didn't use the browser to double check..not too worried about it
[Neuman]
SCH-I500 - EC09(GB)/Nameless V4/Launcher Pro Plus
scarfman4 said:
Any chance for a file that can be ran from CWR to replace the file?
Sent from my SCH-I500 using XDA App
Click to expand...
Click to collapse
If I was better with flashable zips, I would make one. You can try the one here: http://forum.xda-developers.com/attachment.php?attachmentid=557751&d=1301649065 but I am not sure if it will work on the Fascinate. It is for the Galaxy S.
If you do try it, post back with results.
Here is a stupid question, what exactly is "Multitouch Rotate Gesture"? If I had to take a guess, I would think it is for picture rotating or something.
I believe it is the gesture wherein a program such a google maps, you can use two fingers to rotate the map itself any which way while your phone is in the same orientation

[APP] [18 November] [RC1] Energy XDA_UC Configuration Tools 2 (EXCT2)

{
"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"
}
This thread is for the discussion, development and support of EXCT2. EXCT2 is compatible with all Energy Roms based on Windows mobile 6.5 and it is entirely possible that it will work with other stock and custom windows mobile roms.​
EXCT2 is the continuation of a project i started last year which can be found here. It was born out of a hatred for the hours it took to configure a new rom install.​
EXCT2 expands on EXCT by adding a basic User Interface and allowing for a large amount of automation for settings gathering from the system registry. No registry editors required, no Third party XML file writers needed. EXCT2 will detect exchange server settings, audio manager storage paths, Windows Live and palringo settings and so much more all at the touch of a button and export them in the appropriate file type in the folder of your choosing for XDA_UC (or possibly Sashimi) to import.​
Requirements:​
Windows Mobile 6.5 or 6.5.x (it may work with 6.0 and 6.1 as well but this has only been tested in the SDK's emulator and may not work as expected)
.Net Compact Framework 3.5
XDA_UC (it may well work with other settings importers like sashimi)
Some patience ​
Known Bugs:​
All known Bugs have been squished for now​
Download:​
All downloads will be hosted here and new builds will also be hosted on XDA. Hosting the newest version anywhere else is strictly prohibited and if you want to host mirrors of previous versions seek my permission first.​
Some Fun Stuff​
I have had some forum banners made up so the users can identify themselves to each other. Also so it is easier to identify the testers and myself outside of this thread. If anyone donates towards the continuation of the project you will get a special supporters banner. Below is the users banner for you to download. Thanks to Swiss420 for creating them and also for doing the program icon. Swis has also just come up with the EXCT2 Splat!​
​
The Thank you's
Finally i should say thank you to a few people simply because they have put up with me pestering them with questions and because they have provided code. These people are XDA members Ultrashot, Stephj, Xcaliburinhand. Also Jesse Jiang and Reed Kimble the on MSDN forums have contributed greatly. Finally The testing team deserve a big thanks (even the guys that went MIA) CanjunFlavoredBob deserves the biggest thanks for sticking with it and providing some great suggestions and ideas.​
The Changelog
Changelog:
18 November (RC1)
Updated Visual look
Other minor bug fixes
23 September (Beta 5)
Added CHT export (hidden and disabled till the CHTE team sort out a bug in their code)
Fixed Minor issue with twitter export
Added People tab order export
Added Manilla Tab order export
Fixed issue with Alarm 2 and alarm3 exports
15 August (Beta 4)
Added Alarm export functions
Some small UI tweaks
Improved Operation Complete and Operation Failed dialogs
Other small tweaks and fixes
24 July (Beta 3.1)
Fixed Rhodium crash (thanks to JVH3)
22 July 2011 (beta 3)
Complete UI redesign.
Added File overwrite checking
Adjusted Time elapsed check in file write success check to 10 seconds
Improved Exception handling
Added "Export all" click detection to reduce the amount of message boxes it generates
Updated xml export code to include updated error handling, file overwrite protection and Export all click detection
Added copy.mscr to cab file (Installs to "\Storage Card\XDA_UC")
Added copy2root folder detection/creation code
Various Other internal changes
10 July 2011 (beta 2):
Fixed xml file write checking code
Improved folderbrowser (thanks to stephj)
Improved combobox item description for all xml functions
Fixed Twitter function (thanks to CJB for helping with that)
Added framework for file copies. Will allow for opera settings export later
Added some basic exception handling
probably some other things i forgot to write down
30 June 2011 (beta 1):
First public release
The FAQ
1) Some misconceptions.
It has been reported this is a settings importer as well as an exporter. This is not true. EXCT2 will only export settings and only the settings it is aware of. It is also not exclusively written for the Energy roms. It will quite probably work on any rom but the only roms it has been tested with are the stock WM6.5 rom in the WM emulator and the Energy rom in my signature. I also know that CajunFlavoredBob uses EXCT2 on his own private custom rom
2) I use a program/feature in Windows Mobile that doesn't have a settings exporter in EXCT2.
Well tell me about it. As long as it is a program that many people use, IS NOT a third party app like S2U2 or any of the SPB programs etc, and you can provide me an complete example of the settings that need to be exported i will work on including it, if it is reasonable to do so.
3) EXCT2 beta 2 and newer crashes on startup
Make sure you have .Net 3.5 Compact framework installed. This can be checked by running cgacutil.exe from the windows folder on the device
4) What do i need to include when posting a problem?
When posting a problem, please include what device you are using, the exact version (including skin, windows build number and rom date) also the version of .Net you have installed. This can be found by running cgacutil.exe from the windows folder on the device. If this util reports anything less than 3.5.xxxx.xx then don't post. Instead grab .Net 3.5 from the MS download center and get NRGZ to update his rom
more to come.........
@everyone This is a pretty handy application that makes exporting settings a piece of cake. Not everything is fully functional yet, but this has HUGE potential for the entire community and deserves some support and recognition.
@M3PH Is the public beta release any different than the last alpha build I tested?
cajunflavoredbob said:
@everyone This is a pretty handy application that makes exporting settings a piece of cake. Not everything is fully functional yet, but this has HUGE potential for the entire community and deserves some support and recognition.
@M3PH Is the public beta release any different than the last alpha build I tested?
Click to expand...
Click to collapse
Yeah i fixed the things you said were broken .. well the things i could fix (the palringo function mostly). I've also spent a little time this afternoon working on the user selectable save location with stephj and we've cracked it so i'll ship that out into a new private area for the testers tomorrow because i'm gonna go have some chill time. I've been working on this for 4 weeks or so and now it's public i'm gonna go enjoy myself for few hours
I've also just sent a PM to ezthunder in the hope that he will come read the thread and post something about it on the portal. I hope he likes EXCT.
M3PH said:
Yeah i fixed the things you said were broken .. well the things i could fix (the palringo function mostly). I've also spent a little time this afternoon working on the user selectable save location with stephj and we've cracked it so i'll ship that out into a new private area for the testers tomorrow because i'm gonna go have some chill time. I've been working on this for 4 weeks or so and now it's public i'm gonna go enjoy myself for few hours
I've also just sent a PM to ezthunder in the hope that he will come read the thread and post something about it on the portal. I hope he likes EXCT.
Click to expand...
Click to collapse
He's a good one to contact. I always go through orb3000. Either way, here's hoping for some exposure.
Have yourself a beer for this little milestone.
cajunflavoredbob said:
He's a good one to contact. I always go through orb3000. Either way, here's hoping for some exposure.
Have yourself a beer for this little milestone.
Click to expand...
Click to collapse
I already am and theres gonna be a few more consumed before the evening is done
Just a couple of things for people reading this thread and thinking is it worth a try. Firstly hell yes! The more feedback i get from the curious the better because it will allow me to improve on the rough edges. I always release stuff as quickly as i can because the more people that use stuff like this the more it improves in a shorter amount of time. Secondly, if you have flashed more than just a couple of custom roms in your time you know it can be a pain to restore all your settings by hand. I remember when i was flashing updates every couple of days. It made using my phone so difficult because everytime i ran a new program i'd have to configure it. After every flash i would have go through the labourious process of reconfiguring my wifi, exchange partner and vpn settings. That's a half hour job right there and with EXCT it takes 10 seconds. Those numbers work for me and the 1500+ people that downloaded the original EXCT.
So go on, try it out, click that thanks button like you have a muscle spasm in your index finger and enjoy the brilliance that is EXCT2 (and if you really like it buy me a beer links below )
so we made it on to the portal see what egzthunder1 had to say here
Can't wait to try it, just need to know what prep is needed. I'm coming from EXCT1, so should I do anything more than backup and empty my XDA_UC folder and then run the cab?
BerMM said:
Can't wait to try it, just need to know what prep is needed. I'm coming from EXCT1, so should I do anything more than backup and empty my XDA_UC folder and then run the cab?
Click to expand...
Click to collapse
BerMM, Whazzzup!!!?
You actually need to interact with this (sorry if that sounds insulting. I've been drinking). For you, i would say all you need to do is make sure the exchange, wifi and vpn tabs are filled out and hit the export all button and prey it's doesn't crash (no exception handling in the public release yet). If it works fine you then you just need to check everything you need was exported and combine the back up with it.
There also stuff in EXCT2 that would have never got into EXCT (like Facebook and twitter settings backup). Mainly because NRGZ said he would include EXCT2 in the rom when it was up to his standards (and the sun, moon, most of the planets and the man himself all align ).
Anyway, nice to see you're still around. I never forget a pretty face... i mean... i never forget a decent supporter
P.S
If you want a copy of the testing version let me know but it means you will have to do some work and stay in touch but you do get a cool banner like CajunBob's (ok fair enough, it's not exactly a massive selling point but Swiss spent time on those)
Going to give this a shot. Watching Nrgz postings shows he is getting ready to release his first 29022 ROM tonight so this will come in handing getting all the apps configured like I want them.
Thanks.
6700Freak said:
Going to give this a shot. Watching Nrgz postings shows he is getting ready to release his first 29022 ROM tonight so this will come in handing getting all the apps configured like I want them.
Thanks.
Click to expand...
Click to collapse
Another rom, you say? Any chance someone could tell me where a changelog is for these different builds (29017 vs 29022 for example)?
back to the main subject: Great job! I haven't "export[ed] all' yet, as I don't use sense and I feared for the safety of my meticulously kept xda_uc folder, but everything I tested worked just fine.
My first suggestion would be the obvious; instead of having numbers for encryption/auth in the wifi tab, make the drop down list show the words each number represents.
I haven't HR'd yet, but looking at the Hotmail.reg, it doesn't seem to have saved the password anywhere, encrypted or not.
Additionally, it would be nice for it to have an option to add other mail accounts with a page similar to what you have for exchange.
link68759 said:
Another rom, you say? Any chance someone could tell me where a changelog is for these different builds (29017 vs 29022 for example)?
back to the main subject: Great job! I haven't "export[ed] all' yet, as I don't use sense and I feared for the safety of my meticulously kept xda_uc folder, but everything I tested worked just fine.
My first suggestion would be the obvious; instead of having numbers for encryption/auth in the wifi tab, make the drop down list show the words each number represents.
I haven't HR'd yet, but looking at the Hotmail.reg, it doesn't seem to have saved the password anywhere, encrypted or not.
Additionally, it would be nice for it to have an option to add other mail accounts with a page similar to what you have for exchange.
Click to expand...
Click to collapse
You can't lift the hotmail password from the registry. It's just plain impossible but you can lift everything else so when you run windows live all you have to do is to enter the password. There is also no provision for placing it in to a registry file so windows live knows what to do with it. So blame MS not me.
The numbers will get masked eventually. Right now it's more of a case of getting everything working before we make it look nice (and if you look at post 3 there are links that explain the numbers)
If you want extra email accounts send me an example file and when i get time i'll make up a layout and some code for it.
You guys have to understand that to write a program like this i've had to do months of reaserch to get the registry keys etc for exct1 and then i've had to learn VB, develop exchange partner detection code (i am the only person in the world to have done that) and then write 1100+ lines and counting of code. I can also only develop for what i have to hand. If i don't have say a yahoo email account syncing to my phone i'm not just magic one up to test with
M3PH said:
You can't lift the hotmail password from the registry. It's just plain impossible but you can lift everything else so when you run windows live all you have to do is to enter the password. There is also no provision for placing it in to a registry file so windows live knows what to do with it. So blame MS not me.
The numbers will get masked eventually. Right now it's more of a case of getting everything working before we make it look nice (and if you look at post 3 there are links that explain the numbers)
If you want extra email accounts send me an example file and when i get time i'll make up a layout and some code for it.
You guys have to understand that to write a program like this i've had to do months of reaserch to get the registry keys etc for exct1 and then i've had to learn VB, develop exchange partner detection code (i am the only person in the world to have done that) and then write 1100+ lines and counting of code. I can also only develop for what i have to hand. If i don't have say a yahoo email account syncing to my phone i'm not just magic one up to test with
Click to expand...
Click to collapse
I won't blame microsoft for protecting my passwords
I appreciate the significant amount of work you've put into your projects; but correct me if I'm wrong, generating the email2.xml could be done in almost exactly the same way as you have with the activesync page. You don't need to test any email accounts, since if it doesn't work AND the xml file was generated correctly, that is beyond the scope of this export project (and probably something funky going on within winmo itself, since xda_uc is only the messenger). Regardless, I would be willing to create any number of email accounts to help testing, and I'm sure others with random email domains will offer up their bug reports.
I will post a sample email2.xml later
------EDIT
It's later, here's a generic imap email config. There's probably some unnecessary unused values at the end, and I don't mean to patronize, but have you read http://msdn.microsoft.com/en-gb/bb737579 ?
Code:
<wap-provisioningdoc><characteristic type="EMAIL2">
<characteristic type="{76877040-0395-4efb-b3c6-b87c5aedce67}">
<parm name="SERVICENAME" value="Gmail" />
<parm name="SERVICETYPE" value="IMAP4" />
<parm name="INSERVER" value="imap.gmail.com" />
<parm name="OUTSERVER" value="smtp.gmail.com" />
<parm name="NAME" value="Link" />
<parm name="AUTHNAME" value="[email protected]" />
<parm name="AUTHSECRET" value="supersafepass" />
<parm name="DOMAIN" value="" />
<parm name="REPLYADDR" value="[email protected]" />
<parm name="FORMAT" value="2" />
<parm name="LINGER" value="30" />
<parm name="RETRIEVE" value="-1" />
<parm name="KEEPMAX" value="50" />
<parm name="DWNDAY" value="7" />
<characteristic type="TAGPROPS">
<parm name="8128000B" value="0"/>
<parm name="812C000B" value="1"/>
</characteristic>
<parm name="AUTHREQUIRED" value="1" />
<parm name="SMTPALTENABLED" value="0" />
<parm name="SMTPALTAUTHNAME" value="" />
<parm name="SMTPALTAUTHPASSWORD" value="" />
<parm name="SMTPALTDOMAIN" value="" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
link68759 said:
I won't blame microsoft for protecting my passwords
I appreciate the significant amount of work you've put into your projects; but correct me if I'm wrong, generating the email2.xml could be done in almost exactly the same way as you have with the activesync page. You don't need to test any email accounts, since if it doesn't work AND the xml file was generated correctly, that is beyond the scope of this export project (and probably something funky going on within winmo itself, since xda_uc is only the messenger). Regardless, I would be willing to create any number of email accounts to help testing, and I'm sure others with random email domains will offer up their bug reports.
I will post a sample email2.xml later
------EDIT
It's later, here's a generic imap email config. There's probably some unnecessary unused values at the end, and I don't mean to patronize, but have you read http://msdn.microsoft.com/en-gb/bb737579 ?
Code:
<wap-provisioningdoc><characteristic type="EMAIL2">
<characteristic type="{76877040-0395-4efb-b3c6-b87c5aedce67}">
<parm name="SERVICENAME" value="Gmail" />
<parm name="SERVICETYPE" value="IMAP4" />
<parm name="INSERVER" value="imap.gmail.com" />
<parm name="OUTSERVER" value="smtp.gmail.com" />
<parm name="NAME" value="Link" />
<parm name="AUTHNAME" value="[email protected]" />
<parm name="AUTHSECRET" value="supersafepass" />
<parm name="DOMAIN" value="" />
<parm name="REPLYADDR" value="[email protected]" />
<parm name="FORMAT" value="2" />
<parm name="LINGER" value="30" />
<parm name="RETRIEVE" value="-1" />
<parm name="KEEPMAX" value="50" />
<parm name="DWNDAY" value="7" />
<characteristic type="TAGPROPS">
<parm name="8128000B" value="0"/>
<parm name="812C000B" value="1"/>
</characteristic>
<parm name="AUTHREQUIRED" value="1" />
<parm name="SMTPALTENABLED" value="0" />
<parm name="SMTPALTAUTHNAME" value="" />
<parm name="SMTPALTAUTHPASSWORD" value="" />
<parm name="SMTPALTDOMAIN" value="" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
Click to expand...
Click to collapse
Cool, thanks. Can i be cheeky and as you to export the registry key for that too?
As for the coding, it is pretty similar but the problem is in the details. Although the xml writing code would be the same with out the above file i'd have no idea what the attributenames would need to be. Then there is digging the values from the registry. You need to know the name of the account and every one names them differently. So you need to have an inputbox so the user can enter the name, then you need to run a search through the registry to find the relevent key and finally convert all the registry values to something that can be used in an xml file. So, if the email2 providers aren't grouped together in the registry like the activesync partners that's gonna mean writing a custom search proceedure.
So you see how complicated it is and yes i had read that link but it doesn't tell me the things i need to know about the registry key's and values because you forget this program is supposed to be as autonomous as possible and just another xml file writer.
Right, and now for a progress update. The current testing version has an improved folderbrowser that now supports a hierarchal view. Also, i have implemented some very basic exception handling. I expect to get the new version to you guys this week but i'm not making an promises.
Ok, I see, I didn't realize the activesync page fetches values from the registry. I didn't use it, and from my glance at it, I thought you had to fill in the values yourself (which is what I thought would be done for the email2.xml).
I'll have the key for you shortly.
link68759 said:
Ok, I see, I didn't realize the activesync page fetches values from the registry. I didn't use it, and from my glance at it, I thought you had to fill in the values yourself (which is what I thought would be done for the email2.xml).
I'll have the key for you shortly.
Click to expand...
Click to collapse
Some of it comes from the registry and some of it you have to enter coz it's easier to get the user to input it than convert the value data to something the xml file can use. Ideally i would prefer it if the user never had to enter anything but that perfect world doesn't exist
The Beta2 has gone to the testing team. I'm hoping they do their thing so i can get it out today but it's very much a case of it's ready when it's ready. The preliminary changelog includes lots of crash fixes and some bug squishing and a speed improvement here and there. I also have a surprise for you but i'll keep that one quiet untill we release Beta2. Let's just say it opens the door for some really cool future features.
Also would you guys like it if i posted future versions on xda as well as hotfile so you can use the new QR Code download system? Post below and tell me what you think
I can't find the registry keys of email accounts for the life of me: where are they located?
link68759 said:
I can't find the registry keys of email accounts for the life of me: where are they located?
Click to expand...
Click to collapse
It will either be "\storage card" or "\storage card\XDA_UC" and is called either exchange.xml or hotmail.reg. It won't be anywhere else. In the testing version i implemented a folder browser so you can pick where it is saved.

[APP] Heatmap - new app straight from the Galaxy S5 Active

The application area of activity, which has some useful features. You could say that this is the kind of addition to application S Health, aimed at those with active lifestyles.
Download the program Heatmap
Looks good but needs a huge amount of permissions. Normally I'm not interested in permissions but that was 2 pages full of permission requests incl. SMS, Phonebook, etc. Why should this app need this? Anybody knows why? Don't installed it.
Thanks for the app, it looks nice and useful
Sent from my SM-G900F using Tapatalk
mmeidl78 said:
Looks good but needs a huge amount of permissions. Normally I'm not interested in permissions but that was 2 pages full of permission requests incl. SMS, Phonebook, etc. Why should this app need this? Anybody knows why? Don't installed it.
Click to expand...
Click to collapse
not in the store either, spyware? TOO RISKY
The reason for the permissions is because the app acts under the System User ID, therefore can access any permission the system process has access to (ie all of them).
Here is the permissions part of the Android_Manifest file - note the android:sharedUserId field:
Code:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:sharedUserId="android.uid.system" package="com.sec.activemode">
<permission android:name="com.sec.activemode.compass.permission.MAPS_RECEIVE" android:protectionLevel="signature"/>
<uses-permission android:name="com.sec.activemode.compass.permission.MAPS_RECEIVE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" android:permissionGroup="android.permission-group.SYSTEM_TOOLS" android:protectionLevel="dangerous"/>
<permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" android:permissionGroup="android.permission-group.SYSTEM_TOOLS" android:protectionLevel="dangerous"/>
I will further reverse engineer this tomorrow to see if I can determine if it uses any dangerous permissions and if it really needs to operate under the system user. As a general rule of thumb I would never trust an app that operates under the system user unless I had full access to the source code - I run one of my own apps under the system user because the class it accesses isn't visible to a standard user id (acts as a shortcut to the KitKat Easter Egg on HTC phones because HTC always disable the easter eggs) but then again, I have the source code and I built it so I know its not dangerous, with this though I can't be sure
Firstly thanks for the effort. I tried it and works with out any issues....
Jonny said:
The reason for the permissions is because the app acts under the System User ID, therefore can access any permission the system process has access to (ie all of them).
I will further reverse engineer this tomorrow to see if I can determine if it uses any dangerous permissions and if it really needs to operate under the system user. As a general rule of thumb I would never trust an app that operates under the system user unless I had full access to the source code - I run one of my own apps under the system user because the class it accesses isn't visible to a standard user id (acts as a shortcut to the KitKat Easter Egg on HTC phones because HTC always disable the easter eggs) but then again, I have the source code and I built it so I know its not dangerous, with this though I can't be sure
Click to expand...
Click to collapse
This app is from S5 Active ROM. This is pretty normal for system app. As a part of Samsung ecosystem it shares data between different Samsung apps.
By the way, this app uses shared user ID and protected by common signature from Samsung. If you tamper this apk, then it won't be able to install on stock ROM (unless you use core patch to eliminate signature verification). Thus, IMHO, there is no reason to pay so much attention to permissions required by this app.
Please can someone put a direct XDA download link?
Does not work with a Nexus 5
sorg said:
This app is from S5 Active ROM. This is pretty normal for system app. As a part of Samsung ecosystem it shares data between different Samsung apps.
By the way, this app uses shared user ID and protected by common signature from Samsung. If you tamper this apk, then it won't be able to install on stock ROM (unless you use core patch to eliminate signature verification). Thus, IMHO, there is no reason to pay so much attention to permissions required by this app.
Click to expand...
Click to collapse
Thanks, must have been half asleep when originally investigating that, not sure how I missed it Also if its a system app it should be pushed to system/app/ or system/priv-app/ (not sure which it is on Samsung phones seeing as I don't own one but my guess would be system/priv-app/) instead of being installed.

AndroidManifest icon receiver

Hi everyone
I have this piece extracted from Snote's Android manifest.xml:
Code:
<receiver android:name="com.samsung.android.snote.control.ui.quickmemo.receiver.QuickMemoLaunchReceiver">
<intent-filter>
<action android:name="android.intent.action.QUICKMEMO_LAUNCH"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</receiver>
and is referring to action memo popup included in snote.
I would like to associate an icon to this receiver in order to launch action memo without open Snote application.
Is it possible to do that?
Thank you
up
intxeon said:
up
Click to expand...
Click to collapse
What do you intend to use to call the receiver? In general you can associate an icon that comes with an app. But then again... what is the purpose? Do you need an icon to put it in launcher? If so, you cannot. This is not a launchable intent. Receivers receive specific intents. You need to see what intent this receiver responds to. And if you want to launch it, you need to create an app that will create an intent that this receiver will recognize.
In short, in order to invoke and intent for a broadcast receiver, you need something to send that intent. The best thing would be to send an intent from another app where you can control it. You can create a small app and give it an icon of something that reminds action memo and all that app would do is send intent to the quick memo broadcast receiver. If that's what your intention is anyway.
I hope this helps.
Cheers!
Sent from my awesome g920f powered by 6thGear
daxgirl said:
In short, in order to invoke and intent for a broadcast receiver, you need something to send that intent. The best thing would be to send an intent from another app where you can control it. You can create a small app and give it an icon of something that reminds action memo and all that app would do is send intent to the quick memo broadcast receiver. If that's what your intention is anyway.
Click to expand...
Click to collapse
That's exactly what I wanna do but to be honest I don't know how to do that. I thought that was easier to make changes directly into androidmanifest.xml rather than create an app (my knowledge about app creation it's too limited).
Anyway thank you for your suggestion. :good:

Detecting connect/disconnect using CapabilityApi

In developing my wear watch faces I like to have the wearable vibrate when it detects connection of disconnection from the mobile. In the past I've implemented NodeApi.NodeListener and done the vibration in the onPeerConnect or onPeerDisconnect methods.
This has worked well but NodeApi has be deprecated in favor of the CapabilityApi.
Does anyone know of any simple example of how to detect connection using the CapabilityApi? None of the examples I've tried have worked at all. It should be fairly simple since I'm not trying to do downloads or anything, just detecting.
Thanks.
dlbarron said:
In developing my wear watch faces I like to have the wearable vibrate when it detects connection of disconnection from the mobile. In the past I've implemented NodeApi.NodeListener and done the vibration in the onPeerConnect or onPeerDisconnect methods.
This has worked well but NodeApi has be deprecated in favor of the CapabilityApi.
Does anyone know of any simple example of how to detect connection using the CapabilityApi? None of the examples I've tried have worked at all. It should be fairly simple since I'm not trying to do downloads or anything, just detecting.
Thanks.
Click to expand...
Click to collapse
Did you checked this http://stackoverflow.com/questions/35136881/cant-detect-node-using-the-capability-api ?
Skin1980 said:
Did you checked this http://stackoverflow.com/questions/35136881/cant-detect-node-using-the-capability-api ?
Click to expand...
Click to collapse
Yes, I've seen that one. The code is far from complete, for example, what does that class extend or implement?
Here's what I've done.
This is the entry in the manifest for the service.
<service
android:name=".MyService">
<intent-filter>
<action android:name="com.google.android.gms.wearable.DATA_CHANGED" />
<action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" />
<action android:name="com.google.android.gms.wearable.CAPABILITY_CHANGED" />
<action android:name="com.google.android.gms.wearable.CHANNEL_EVENT" />
</intent-filter>
</service>
And here is the code that is supposed to run
public class MyService extends WearableListenerService implements GoogleApiClient.ConnectionCallbacks,GoogleApiClient.OnConnectionFailedListener {
private GoogleApiClient mGoogleApiClient;
private static final String TAG="MyService";
public static final long VIBRATE_TIME = 250;
@override
public void onCreate() {
super.onCreate();
Toast.makeText(this,"Starting onCreate",Toast.LENGTH_LONG).show();
Log.i(TAG,"Starting onCreate");
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addApi(Wearable.API)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
ConnectionResult connectionResult = mGoogleApiClient.blockingConnect(30, TimeUnit.SECONDS);
if(!connectionResult.isSuccess()) {
Toast.makeText(this,"onCreate",Toast.LENGTH_LONG).show();
Log.i(TAG,"onCreate");
}
}
I've overridden the other methods in WearableListenerService but it doesn't matter, the onCreate isn't even called so there's no way the GoogleApiClient is ever created. Now according to what I've read I shouldn't have to do anything to start the service, it is supposed to be started in response to events, like connecting etc, but nothing.
Well, I found the solutions. I created a java class that extends WearableListenerService and in it I override the onPeerConnected and onPeerDisconnected methods. But I also had to add this to the wearable manifest:
<service
android:name=".WearListener">
<intent-filter>
<action android:name="com.google.android.gms.wearable.BIND_LISTENER"/>
</intent-filter>
</service>
This is odd because BIND_LISTENER is deprecated. But it works so that's all I care about.

Categories

Resources