[AC-4118] Error with permissions on Android 6
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | n/a |
Status | Closed |
Resolution | Needs more info |
Resolution Date | 2016-07-27T17:30:51.000+0000 |
Affected Version/s | Appcelerator Studio 4.5.0 |
Fix Version/s | n/a |
Components | n/a |
Labels | android-6, modules, permissions |
Reporter | Anna |
Assignee | Shak Hossain |
Created | 2016-07-20T15:51:05.000+0000 |
Updated | 2016-07-27T17:30:51.000+0000 |
Description
Hello,
I'm having this error on Android 6 permissions or modules, I don't know. I can't know what module or permission need the app because the libraries are form Titanium. This is my error:
[ERROR] : linker: readlink('/proc/self/fd/22') failed: Permission denied [fd=22]
[INFO] : TiApplication: (main) [0,0] checkpoint, app created.
[INFO] : TiApplication: (main) [81,81] Titanium 5.4.0 (2016/04/25 22:10 63d6351)
[ERROR] : linker: warning: unable to get realpath for the library "/system/lib/hw/gralloc.hi3635.so". Will use given name.
[ERROR] : linker: readlink('/proc/self/fd/22') failed: Permission denied [fd=22]
[INFO] : DatabaseHelper: No value in database for platform key: 'unique_machine_id' returning supplied default ''
[ERROR] : linker: warning: unable to get realpath for the library "libion.so". Will use given name.
[ERROR] : HAL: load: id=gralloc != hmi->id=gralloc
[INFO] : DatabaseHelper: No value in database for platform key: 'hardware_machine_id' returning supplied default ''
[INFO] : TiApplication: (main) [383,464] Titanium Javascript runtime: v8
[ERROR] : linker: readlink('/proc/self/fd/26') failed: Permission denied [fd=26]
[ERROR] : linker: warning: unable to get realpath for the library "/data/app/es.renr.manager-1/lib/arm/libstlport_shared.so". Will use given name.
[ERROR] : linker: readlink('/proc/self/fd/26') failed: Permission denied [fd=26]
[ERROR] : linker: warning: unable to get realpath for the library "/data/app/es.renr.manager-1/lib/arm/libkroll-v8.so". Will use given name.
[INFO] : HwCust: Constructor found for class android.app.HwCustHwWallpaperManagerImpl
[INFO] : TiRootActivity: (main) [0,0] checkpoint, on root activity create, savedInstanceState: null
[WARN] : V8Object: (KrollRuntimeThread) [83,83] Runtime disposed, cannot set property 'userAgent'
[ERROR] : linker: readlink('/proc/self/fd/26') failed: Permission denied [fd=26]
[ERROR] : linker: warning: unable to get realpath for the library "/data/app/es.renr.manager-1/lib/arm/libti.sq.so". Will use given name.
[ERROR] : TiApplication: (KrollRuntimeThread) [39,122] Sending event: exception on thread: KrollRuntimeThread msg:java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/es.renr.manager-1/lib/arm/libti.sq.so: has text relocations; Titanium 5.4.0,2016/04/25 22:10,63d6351
[ERROR] : TiApplication: java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/es.renr.manager-1/lib/arm/libti.sq.so: has text relocations
[ERROR] : TiApplication: at java.lang.Runtime.loadLibrary(Runtime.java:384)
[ERROR] : TiApplication: at java.lang.System.loadLibrary(System.java:1086)
[ERROR] : TiApplication: at org.appcelerator.kroll.runtime.v8.V8Runtime.loadExternalModules(V8Runtime.java:132)
[ERROR] : TiApplication: at org.appcelerator.kroll.runtime.v8.V8Runtime.initRuntime(V8Runtime.java:99)
[ERROR] : TiApplication: at org.appcelerator.kroll.KrollRuntime.doInit(KrollRuntime.java:205)
[ERROR] : TiApplication: at org.appcelerator.kroll.KrollRuntime$KrollRuntimeThread.run(KrollRuntime.java:114)
I'm cheking this permissions, but the error appear BEFORE this code is exectued:
exports.checkPermissions = function(){
var permissionsToRequest = [];
// check WRITE_EXTERNAL_STORAGE permission
var storagePermission = "android.permission.WRITE_EXTERNAL_STORAGE";
var hasStoragePermission = Ti.Android.hasPermission(storagePermission);
if(!hasStoragePermission){
permissionsToRequest.push(storagePermission);
}
// check RECORD_AUDIO permission
var audioPermission = "android.permission.RECORD_AUDIO";
var hasAudioPermission = Ti.Android.hasPermission(audioPermission);
if(!hasAudioPermission){
permissionsToRequest.push(audioPermission);
}
// check ACCESS_NETWORK_STATE permission
var networkPermission = "android.permission.ACCESS_NETWORK_STATE";
var hasNetworkPermission = Ti.Android.hasPermission(networkPermission);
if(!hasNetworkPermission){
permissionsToRequest.push(networkPermission);
}
// check INTERNET permission
var internetPermission = "android.permission.INTERNET";
var hasInternetPermission = Ti.Android.hasPermission(internetPermission);
if(!hasInternetPermission){
permissionsToRequest.push(internetPermission);
}
// check ACCESS_COARSE_LOCATION permission
var locationPermission = "android.permission.ACCESS_COARSE_LOCATION";
var hasLocationPermission = Ti.Android.hasPermission(locationPermission);
if(!hasLocationPermission){
permissionsToRequest.push(locationPermission);
}
// check ACCESS_FINE_LOCATION permission
var location2Permission = "android.permission.ACCESS_FINE_LOCATION";
var hasLocation2Permission = Ti.Android.hasPermission(location2Permission);
if(!hasLocation2Permission){
permissionsToRequest.push(location2Permission);
}
// request permission
Ti.Android.requestPermissions(permissionsToRequest, function(e) {
if (e.success) {
Ti.API.info("SUCCESS");
} else {
Ti.API.info("ERROR: " + e.error);
}
});
};
Hello, Can you follow the guide in here http://docs.appcelerator.com/platform/latest/#!/guide/Quick_Start_Guide_for_Android_APS_SDK and try to define the permissions in manifest of tiapp.xml file.