Hi,
I want to use the C2DM, but I always get follwoing Error:
Code:
10-05 02:10:40.394: WARN/ActivityManager(11985): Permission Denial: receiving Intent { act=com.google.android.c2dm.intent.REGISTRATION cat=[mobile.app] (has extras) } to mobile.app requires mobile.app.permission.C2D_MESSAGE due to sender com.google.android.gsf (uid 10046)
Here is my Manifest.xml:
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="mobile.app"
android:versionName="0.1"
android:versionCode="1">
<uses-sdk android:minSdkVersion="10" />
<!-- Only this application can receive the messages and registration result -->
<permission android:name="com.google.android.c2dm.permission.C2D_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="mobile.app.permission.C2D_MESSAGE" />
<!-- This app has permission to register and receive message -->
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<!-- Send the registration id to the server -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Main">
<intent-filter>
<action android:name="android.intent.action.MAIN"></action>
<category android:name="android.intent.category.LAUNCHER"></category>
</intent-filter>
</activity>
<!-- Only C2DM servers can send messages for the app. If permission is not set - any other app can generate it -->
<receiver android:name=".C2DMReceiver" android:permission="com.google.android.c2dm.permission.SEND">
<!-- Receive the actual message -->
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="mobile.app" />
</intent-filter>
<!-- Receive the registration id -->
<intent-filter>
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="mobile.app" />
</intent-filter>
</receiver>
</application>
</manifest>
Anyone an idea?
thanks!
Questions or Problems Should Not Be Posted in the Development Forum
Please Post in the Correct Forums
Moving to Q&A
It's known that new kitkat base have permission issue using Ext SD card writing. Here is simple application to fix the issue.
- Needs Rooted device
In which condition it is helpful?
-When you are not able to write on ExtSD card
-Fail to copy to ExtSD
-If you keeping backup on titanium and you getting message 'no enough space' while making backup with titanium
or any msg suggestive of fail in writing on ExtSD
PS : If you are not able to read ExtSD card contents, that's different issue and can't solve by this.
How to Use
- Download and Install attached ExtSD Fix.apk as regular apk
-Click app icon from app drawer
-Grant SuperSu permission
-When you get msg 'ExtSD fixed applied' reboot device
-Done. You can uninstall app now.
thanks I need this
I'M rebooting. If it doesn't work "I'll be back".
Thanks man!
[Updated]
10/19/2014
Totally working, Now I can erease docs, pics, and music using 3rd app as Astro, etc.
Thanks, Again.
Thanks Doc , Works Perfectly
Thanks that's great.
I'll try it soon.
Working on Exynos N910C
Thanks Doc,
Working properly with 910C model.
ExtSD Fix.apk doesn´t fix the issue on my Note 4, 910C
kadiremrah said:
Thanks Doc,
Working properly with 910C model.
Click to expand...
Click to collapse
Hello Kadiremrah & Dr. Ketan,
I am also on the Note 4 910C-model, running Dr. Ketan´s ROM, but can´t manage to write on the sd-card. I tried Dr. Ketan´s "ExtSD Fix.apk", as well as the method below.
This is the setting how the platform.xml looks on my device:
<permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="media_rw" />
</permission>
I followed the instructions neatly, no typo, rooted, etc. but to no avail. Many months ago I already applied the same SD-card-fix on my previous phone (LG G2) - at that time it worked perfectly.
Here is some further info that I gathered from Root Explorer . Maybe there is something not correct with those settings.
The owner of the "storage/extSdCard"-Folder is: Owner: 0 - root; Group 0 - root
The permissions of the "storage/extSdCard"-Folder are set to: 0771
The permissions for mnt/media_rw are set to: 0700
I tried to set the permissions for mnt/media_rw to 0744, which immediately after the change gets displayed on the Root Explorer properly. But after a reboot it automatically goes back to 0700.
Any ideas what could be wrong here?
I just noticed that in the Note 4, storage/external_SD is called storage/extSdCard instead. Could that be causing the problem?
Kadiremrah, it would be very interesting to compare those settings with your 910C-model.
Try other SD card bcoz ROM is already prefixed for ext SD writing
Sent from my SM-N910G using xda premium
My platform.xml
PHP:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 The Android Open Source Project
Copyright (C) 2013 Broadcom Corporation
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 file is used to define the mappings between lower-level system
user and group IDs and the higher-level permission names managed
by the platform.
Be VERY careful when editing this file! Mistakes made here can open
big security holes.
-->
<permissions>
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- The following tags are associating low-level group IDs with
permission names. By specifying such a mapping, you are saying
that any application process granted the given permission will
also be running with the given group ID attached to its process,
so it can perform any filesystem (read, write, execute) operations
allowed for that group. -->
<permission name="android.permission.BLUETOOTH_ADMIN" >
<group gid="net_bt_admin" />
</permission>
<permission name="android.permission.BLUETOOTH" >
<group gid="net_bt" />
</permission>
<permission name="android.permission.BLUETOOTH_STACK" >
<group gid="net_bt_stack" />
</permission>
<permission name="android.permission.NET_TUNNELING" >
<group gid="vpn" />
</permission>
<permission name="android.permission.SYSTEM_GROUP_INTERNAL" >
<group gid="system" />
</permission>
<permission name="android.permission.INTERNET" >
<group gid="inet" />
</permission>
<permission name="com.sec.android.permission.CAMERA" >
<group gid="camera" />
</permission>
<permission name="android.permission.READ_LOGS" >
<group gid="log" />
</permission>
<permission name="android.permission.READ_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
</permission>
<permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="media_rw" />
</permission>
<permission name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="sdcard_all" />
</permission>
<permission name="android.permission.WRITE_MEDIA_STORAGE" >
<group gid="media_rw" />
</permission>
<permission name="android.permission.ACCESS_MTP" >
<group gid="mtp" />
</permission>
<permission name="android.permission.NET_ADMIN" >
<group gid="net_admin" />
</permission>
<!-- The group that /cache belongs to, linked to the permission
set on the applications that can access /cache -->
<permission name="android.permission.ACCESS_CACHE_FILESYSTEM" >
<group gid="cache" />
</permission>
<!-- RW permissions to any system resources owned by group 'diag'.
This is for carrier and manufacture diagnostics tools that must be
installable from the framework. Be careful. -->
<permission name="android.permission.DIAGNOSTIC" >
<group gid="input" />
<group gid="diag" />
</permission>
<!-- Group that can read detailed network usage statistics -->
<permission name="android.permission.READ_NETWORK_USAGE_HISTORY">
<group gid="net_bw_stats" />
</permission>
<!-- Group that can modify how network statistics are accounted -->
<permission name="android.permission.MODIFY_NETWORK_ACCOUNTING">
<group gid="net_bw_acct" />
</permission>
<permission name="android.permission.LOOP_RADIO" >
<group gid="loop_radio" />
</permission>
<!-- The group that releated with VPN -->
<permission name="android.permission.SAMSUNG_MODIFY_ROUTE" >
<group gid="net_admin" />
</permission>
<permission name="android.permission.SAMSUNG_TUNTAP" >
<group gid="vpn" />
</permission>
<permission name="android.permission.SAMSUNG_MODIFY_IPTABLES" >
<group gid="net_raw" />
</permission>
<!-- The group that releated with VPN -->
<permission name="com.sec.android.SAMSUNG_MODIFY_ROUTE" >
<group gid="net_admin" />
</permission>
<permission name="com.sec.android.SAMSUNG_TUNTAP" >
<group gid="vpn" />
</permission>
<permission name="com.sec.android.SAMSUNG_MODIFY_IPTABLES" >
<group gid="net_raw" />
</permission>
<!-- The group that releated with URL -->
<permission name="com.sec.android.SAMSUNG_GET_URL" >
<group gid="secnetfilter" />
</permission>
<!-- Group that can use gscaler -->
<permission name="com.sec.android.permission.USE_GSCALER" >
<group gid="graphics" />
</permission>
<!-- Except for SysScope, DO NOT USE this permission. -->
<permission name="com.sec.android.app.sysscope.permission.ACCESS_SYSTEM_INFO_SYSSCOPE_ONLY" >
<group gid="radio" />
</permission>
<!-- Group that can use gscaler -->
<permission name="com.sec.android.permission.USE_CAMERA" >
<group gid="camera" />
</permission>
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- The following tags are assigning high-level permissions to specific
user IDs. These are used to allow specific core system users to
perform the given operations with the higher-level framework. For
example, we give a wide variety of permissions to the shell user
since that is the user the adb shell runs under and developers and
others should have a fairly open environment in which to
interact with the system. -->
<assign-permission name="android.permission.MODIFY_AUDIO_SETTINGS" uid="media" />
<assign-permission name="android.permission.ACCESS_SURFACE_FLINGER" uid="media" />
<assign-permission name="android.permission.WAKE_LOCK" uid="media" />
<assign-permission name="android.permission.UPDATE_DEVICE_STATS" uid="media" />
<assign-permission name="android.permission.UPDATE_APP_OPS_STATS" uid="media" />
<assign-permission name="android.permission.ACCESS_SURFACE_FLINGER" uid="graphics" />
<!-- This is a list of all the libraries available for application
code to link against. -->
<library name="android.test.runner"
file="/system/framework/android.test.runner.jar" />
<library name="javax.obex"
file="/system/framework/javax.obex.jar"/>
<!--
<library name="javax.btobex"
file="/system/framework/javax.btobex.jar"/>
-->
</permissions>
Parinibbana said:
Hello Kadiremrah & Dr. Ketan,
I am also on the Note 4 910C-model, running Dr. Ketan´s ROM, but can´t manage to write on the sd-card. I tried Dr. Ketan´s "ExtSD Fix.apk", as well as the method below.
This is the setting how the platform.xml looks on my device:
<permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="media_rw" />
</permission>
I followed the instructions neatly, no typo, rooted, etc. but to no avail. Many months ago I already applied the same SD-card-fix on my previous phone (LG G2) - at that time it worked perfectly.
Here is some further info that I gathered from Root Explorer . Maybe there is something not correct with those settings.
The owner of the "storage/extSdCard"-Folder is: Owner: 0 - root; Group 0 - root
The permissions of the "storage/extSdCard"-Folder are set to: 0771
The permissions for mnt/media_rw are set to: 0700
I tried to set the permissions for mnt/media_rw to 0744, which immediately after the change gets displayed on the Root Explorer properly. But after a reboot it automatically goes back to 0700.
Any ideas what could be wrong here?
I just noticed that in the Note 4, storage/external_SD is called storage/extSdCard instead. Could that be causing the problem?
Kadiremrah, it would be very interesting to compare those settings with your 910C-model.
Click to expand...
Click to collapse
dr.ketan said:
Try other SD card bcoz ROM is already prefixed for ext SD writing
Sent from my SM-N910G using xda premium
Click to expand...
Click to collapse
Spot on, Doc.
I tried another card, works perfectly. Back to the previous one - same problem.
Then I experimented with the mount/unmount-option in the settings. I have to confess I usually take out the card without un-mounting it first. Now I did it properly and voila. It works.
Another thing is that all my backupped apps (via Titanium) refer to storage/external_SD, since this was the way it was called on my previous phone (LG G2). But in the Note 4 the storage-place is called storage/extSdCard.
A number of my apps can´t find the new place. Of course I could just go into their settings and change the sd-card reference. But is there a way to rename the sd-card folder from extSdCard to external_SD? Root Explorer doesn´t let me.
---------- Post added at 09:46 AM ---------- Previous post was at 09:43 AM ----------
dr.ketan said:
Try other SD card bcoz ROM is already prefixed for ext SD writing
Sent from my SM-N910G using xda premium
Click to expand...
Click to collapse
kadiremrah said:
My platform.xml
PHP:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 The Android Open Source Project
Copyright (C) 2013 Broadcom Corporation
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 file is used to define the mappings between lower-level system
user and group IDs and the higher-level permission names managed
by the platform.
Be VERY careful when editing this file! Mistakes made here can open
big security holes.
-->
<permissions>
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- The following tags are associating low-level group IDs with
permission names. By specifying such a mapping, you are saying
that any application process granted the given permission will
also be running with the given group ID attached to its process,
so it can perform any filesystem (read, write, execute) operations
allowed for that group. -->
<permission name="android.permission.BLUETOOTH_ADMIN" >
<group gid="net_bt_admin" />
</permission>
<permission name="android.permission.BLUETOOTH" >
<group gid="net_bt" />
</permission>
<permission name="android.permission.BLUETOOTH_STACK" >
<group gid="net_bt_stack" />
</permission>
<permission name="android.permission.NET_TUNNELING" >
<group gid="vpn" />
</permission>
<permission name="android.permission.SYSTEM_GROUP_INTERNAL" >
<group gid="system" />
</permission>
<permission name="android.permission.INTERNET" >
<group gid="inet" />
</permission>
<permission name="com.sec.android.permission.CAMERA" >
<group gid="camera" />
</permission>
<permission name="android.permission.READ_LOGS" >
<group gid="log" />
</permission>
<permission name="android.permission.READ_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
</permission>
<permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="media_rw" />
</permission>
<permission name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="sdcard_all" />
</permission>
<permission name="android.permission.WRITE_MEDIA_STORAGE" >
<group gid="media_rw" />
</permission>
<permission name="android.permission.ACCESS_MTP" >
<group gid="mtp" />
</permission>
<permission name="android.permission.NET_ADMIN" >
<group gid="net_admin" />
</permission>
<!-- The group that /cache belongs to, linked to the permission
set on the applications that can access /cache -->
<permission name="android.permission.ACCESS_CACHE_FILESYSTEM" >
<group gid="cache" />
</permission>
<!-- RW permissions to any system resources owned by group 'diag'.
This is for carrier and manufacture diagnostics tools that must be
installable from the framework. Be careful. -->
<permission name="android.permission.DIAGNOSTIC" >
<group gid="input" />
<group gid="diag" />
</permission>
<!-- Group that can read detailed network usage statistics -->
<permission name="android.permission.READ_NETWORK_USAGE_HISTORY">
<group gid="net_bw_stats" />
</permission>
<!-- Group that can modify how network statistics are accounted -->
<permission name="android.permission.MODIFY_NETWORK_ACCOUNTING">
<group gid="net_bw_acct" />
</permission>
<permission name="android.permission.LOOP_RADIO" >
<group gid="loop_radio" />
</permission>
<!-- The group that releated with VPN -->
<permission name="android.permission.SAMSUNG_MODIFY_ROUTE" >
<group gid="net_admin" />
</permission>
<permission name="android.permission.SAMSUNG_TUNTAP" >
<group gid="vpn" />
</permission>
<permission name="android.permission.SAMSUNG_MODIFY_IPTABLES" >
<group gid="net_raw" />
</permission>
<!-- The group that releated with VPN -->
<permission name="com.sec.android.SAMSUNG_MODIFY_ROUTE" >
<group gid="net_admin" />
</permission>
<permission name="com.sec.android.SAMSUNG_TUNTAP" >
<group gid="vpn" />
</permission>
<permission name="com.sec.android.SAMSUNG_MODIFY_IPTABLES" >
<group gid="net_raw" />
</permission>
<!-- The group that releated with URL -->
<permission name="com.sec.android.SAMSUNG_GET_URL" >
<group gid="secnetfilter" />
</permission>
<!-- Group that can use gscaler -->
<permission name="com.sec.android.permission.USE_GSCALER" >
<group gid="graphics" />
</permission>
<!-- Except for SysScope, DO NOT USE this permission. -->
<permission name="com.sec.android.app.sysscope.permission.ACCESS_SYSTEM_INFO_SYSSCOPE_ONLY" >
<group gid="radio" />
</permission>
<!-- Group that can use gscaler -->
<permission name="com.sec.android.permission.USE_CAMERA" >
<group gid="camera" />
</permission>
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- The following tags are assigning high-level permissions to specific
user IDs. These are used to allow specific core system users to
perform the given operations with the higher-level framework. For
example, we give a wide variety of permissions to the shell user
since that is the user the adb shell runs under and developers and
others should have a fairly open environment in which to
interact with the system. -->
<assign-permission name="android.permission.MODIFY_AUDIO_SETTINGS" uid="media" />
<assign-permission name="android.permission.ACCESS_SURFACE_FLINGER" uid="media" />
<assign-permission name="android.permission.WAKE_LOCK" uid="media" />
<assign-permission name="android.permission.UPDATE_DEVICE_STATS" uid="media" />
<assign-permission name="android.permission.UPDATE_APP_OPS_STATS" uid="media" />
<assign-permission name="android.permission.ACCESS_SURFACE_FLINGER" uid="graphics" />
<!-- This is a list of all the libraries available for application
code to link against. -->
<library name="android.test.runner"
file="/system/framework/android.test.runner.jar" />
<library name="javax.obex"
file="/system/framework/javax.obex.jar"/>
<!--
<library name="javax.btobex"
file="/system/framework/javax.btobex.jar"/>
-->
</permissions>
Click to expand...
Click to collapse
Thanks Kadiremrah for the platform.xml printout. As suspected, it´s the same as on my device. The problem seems to have to do with the sd-card itself - not the software.
Just to keep you guys updated.
In fact, the mount/unmount didn´t turn out to help much after all.
But using another sd-card solved the problem.
Parinibbana said:
Just to keep you guys updated.
In fact, the mount/unmount didn´t turn out to help much after all.
But using another sd-card solved the problem.
Click to expand...
Click to collapse
Expected. I have very first told you to try another SD card as ROM already prefixed for this.
dr.ketan said:
Expected. I have very first told you to try another SD card as ROM already prefixed for this.
Click to expand...
Click to collapse
Sādhu, sādhu, sādhu.
With Mettā,
AD
I cant get this to work? im rooted, downloaded the apk, installs fine. but when i click it nothing happens. just grayed out for 2 secs and then nothing. waiting for supersu to ask for permission. but no such luck?
got a SM-N910F
Check supersu app log. If it was rejected then select to forget. Or Uninstall and reinstall app
Sent from my SM-N910G using xda premium
it actually took like 6minutes before the supersu asked for permission. trying to flash a new stock rom now. phone was acting up lately.. will give this a go with a fresh install and report back.
thanks..
You don't need to be rooted in order to write to the external SD. Most apps create a folder in external_sdAndroid/data/ whatever the app is that's writable.
Forgot to report back. Did a clean install and this worked beautifully.. Now titanium can write to the SD card. (problem was that xposed and s health was not friends.)
Does it include "your memory card was damaged" when i format my mmc it last like a day then it damage again. Will this solution works for my issue?
Sent from my SM-N910C using XDA Premium 4 mobile app
extsd card permission
Hi sir
I am using cm12 in my galaxy s2 plus (9105)
But my problem is that when I am going to copy
any file or media to my extad card I can do it
but when I am going to use it I can't.
one media file like mp3 I hear different songs sound
and apk file show me one massage (phrase problem when copy)
like this so please help me to solve
Does it work with MM?
Hi all - I need help with a really urgent issue.
I'm running a beta test and hence loaded the apk to a public url (amazon S3). Until this point the url was not public domain.
I installed the app on multiple devices and after a day or two, I'm getting the popup warning to uninstall the app.
I installed on my device yesterday, it worked fine. Then today I tried to install on one more device then this issue came. Then I un-installed on my device. And tried to install, again the popup came. So I think it has to with verify apps somehow. But I am not able to figure it out.
And this behavior is not the same on all the phones/devices. On virustotal, i'm getting 1/57 detection ratio where drweb is giving this message - Android.Gmuse.2.origin. but this error from virustotal comes for my previous apps I've created also - but not this uninstall warning from Android and my apps are running fine on many other devices.
If it helps, i've also listed the permissions my app is using
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOC ATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCAT ION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_ST ATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE " />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.CHANGE_CONFIGURAT ION" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_ST ATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE " />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.INSTALL_PACKAGES" />
<uses-permission android:name="android.permission.INTERACT_ACROSS_U SERS_FULL" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.KILL_BACKGROUND_P ROCESSES" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETT INGS" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FIL ESYSTEMS" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_ CALLS" />
<uses-permission android:name="android.permission.READ_CALENDAR" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STO RAGE" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.READ_CALL_LOG" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMP LETED" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RESTART_PACKAGES" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.STATUS_BAR" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WIND OW" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_ST ORAGE" />
<uses-permission android:name="android.permission.WRITE_SECURE_SETT INGS" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="com.android.browser.permission.READ_ HISTORY_BOOKMARKS" />
<uses-permission android:name="com.android.launcher.permission.INST ALL_SHORTCUT" />
<uses-permission android:name="com.android.launcher.permission.READ _SETTINGS" />
<uses-permission android:name="com.android.launcher.permission.UNIN STALL_SHORTCUT" />
<uses-permission android:name="com.google.android.gms.permission.AC TIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<!-- Share App -->
<uses-permission android:name="com.apps.corecomponents.view.TAB_INF O" />
<permission
android:name="com.apps.corecomponents.permission.C 2D_MESSAGE"
androidrotectionLevel="signature" />
<permission android:name="com.apps.corecomponents.view.TAB_INF O" />
<uses-permission android:name="com.apps.corecomponents.permission.C 2D_MESSAGE" />
<!-- This app has permission to register and receive data message. -->
<uses-permission android:name="com.google.android.c2dm.permission.R ECEIVE" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
Please let me know what prompts this error and how do we fix it.
Thanks a lot
hey everyone.
So, I am desperately trying to force/trick google camera to write to the sd card rather than to the internal card.
my sdcard is formatted as ext4 and in its root i created the directory: DCIM_sd.
now, using ssh (as root ofc) i navigated to: /data/media/0, deleted DCIM and re-created it. gave right ownership and permissions.
At this point I executed this command:
Code:
busybox mount --bind /storage/sdcard1/DCIM_sd/ DCIM
and followed by df -h just to confirm that it was successful:
Code:
localhost 0 # df -h
Filesystem Size Used Available Use% Mounted on
tmpfs 415.8M 108.0K 415.7M 0% /dev
none 415.8M 12.0K 415.8M 0% /sys/fs/cgroup
tmpfs 415.8M 0 415.8M 0% /mnt/asec
tmpfs 415.8M 0 415.8M 0% /mnt/obb
/dev/block/mmcblk0p3 19.7M 11.3M 8.3M 58% /efs
/dev/block/mmcblk0p9 1.5G 524.3M 987.6M 35% /system
/dev/block/mmcblk0p8 1007.9M 18.8M 989.1M 2% /cache
/dev/block/mmcblk0p10
551.2M 9.2M 542.0M 2% /preload
/dev/block/mmcblk0p12
11.3G 4.1G 7.3G 36% /data
/dev/fuse 11.3G 4.1G 7.3G 36% /mnt/shell/emulated
/dev/block/vold/179:49
29.0G 15.2G 12.4G 55% /mnt/media_rw/sdcard1
/dev/block/vold/179:49
29.0G 15.2G 12.4G 55% /mnt/secure/asec
/dev/fuse 29.0G 15.2G 12.4G 55% /storage/sdcard1
[B]/dev/fuse 29.0G 15.2G 12.4G 55% /data/media/0/DCIM[/B]
At this point I launched google camera (fresh).
Unfortunately I have this toast message popping up:
"Insert an SD card before using the camera."
Click to expand...
Click to collapse
My impression is that the app can't access the directory. For this reason I edited this file: /etc/permissions/platform.xml to look as the following:
Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 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 file is used to define the mappings between lower-level system
user and group IDs and the higher-level permission names managed
by the platform.
Be VERY careful when editing this file! Mistakes made here can open
big security holes.
-->
<permissions>
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- The following tags are associating low-level group IDs with
permission names. By specifying such a mapping, you are saying
that any application process granted the given permission will
also be running with the given group ID attached to its process,
so it can perform any filesystem (read, write, execute) operations
allowed for that group. -->
<permission name="android.permission.BLUETOOTH_ADMIN" >
<group gid="net_bt_admin" />
</permission>
<permission name="android.permission.BLUETOOTH" >
<group gid="net_bt" />
</permission>
<permission name="android.permission.BLUETOOTH_STACK" >
<group gid="net_bt_stack" />
</permission>
<permission name="android.permission.NET_TUNNELING" >
<group gid="vpn" />
</permission>
<permission name="android.permission.INTERNET" >
<group gid="inet" />
</permission>
<permission name="android.permission.READ_LOGS" >
<group gid="log" />
</permission>
<permission name="android.permission.READ_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
</permission>
<permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="media_rw" />
</permission>
<permission name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE" >
<group gid="sdcard_r" />
<group gid="sdcard_rw" />
<group gid="sdcard_all" />
</permission>
<permission name="android.permission.WRITE_MEDIA_STORAGE" >
<group gid="media_rw" />
<group gid="sdcard_rw" />
</permission>
<permission name="android.permission.ACCESS_MTP" >
<group gid="mtp" />
</permission>
<permission name="android.permission.NET_ADMIN" >
<group gid="net_admin" />
</permission>
<!-- The group that /cache belongs to, linked to the permission
set on the applications that can access /cache -->
<permission name="android.permission.ACCESS_CACHE_FILESYSTEM" >
<group gid="cache" />
</permission>
<!-- RW permissions to any system resources owned by group 'diag'.
This is for carrier and manufacture diagnostics tools that must be
installable from the framework. Be careful. -->
<permission name="android.permission.DIAGNOSTIC" >
<group gid="input" />
<group gid="diag" />
</permission>
<!-- Group that can read detailed network usage statistics -->
<permission name="android.permission.READ_NETWORK_USAGE_HISTORY">
<group gid="net_bw_stats" />
</permission>
<!-- Group that can modify how network statistics are accounted -->
<permission name="android.permission.MODIFY_NETWORK_ACCOUNTING">
<group gid="net_bw_acct" />
</permission>
<permission name="android.permission.LOOP_RADIO" >
<group gid="loop_radio" />
</permission>
<!-- Hotword training apps sometimes need a GID to talk with low-level
hardware; give them audio for now until full HAL support is added. -->
<permission name="android.permission.MANAGE_VOICE_KEYPHRASES">
<group gid="audio" />
</permission>
<permission name="android.permission.ACCESS_FM_RADIO" >
<group gid="media" />
</permission>
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- ================================================================== -->
<!-- The following tags are assigning high-level permissions to specific
user IDs. These are used to allow specific core system users to
perform the given operations with the higher-level framework. For
example, we give a wide variety of permissions to the shell user
since that is the user the adb shell runs under and developers and
others should have a fairly open environment in which to
interact with the system. -->
<assign-permission name="android.permission.MODIFY_AUDIO_SETTINGS" uid="media" />
<assign-permission name="android.permission.ACCESS_SURFACE_FLINGER" uid="media" />
<assign-permission name="android.permission.WAKE_LOCK" uid="media" />
<assign-permission name="android.permission.UPDATE_DEVICE_STATS" uid="media" />
<assign-permission name="android.permission.UPDATE_APP_OPS_STATS" uid="media" />
<assign-permission name="android.permission.ACCESS_SURFACE_FLINGER" uid="graphics" />
<!-- This is a list of all the libraries available for application
code to link against. -->
<library name="android.test.runner"
file="/system/framework/android.test.runner.jar" />
<library name="javax.obex"
file="/system/framework/javax.obex.jar"/>
<library name="javax.btobex"
file="/system/framework/javax.btobex.jar"/>
<!-- These are the standard packages that are white-listed to always have internet
access while in power save mode, even if they aren't in the foreground. -->
<allow-in-power-save package="com.android.providers.downloads" />
</permissions>
Rebooted (and remounted...), but still same issue.
What am I doing wrong? What can I do to solve this issue?
my phone: Samsung i9300
running CM 12.1-20150426-UNOFFICIAL-i9300
android version: 5.1.1
Thanks,
Niko