Note that there are some explanatory texts on larger screens.

plurals
  1. POStarting activity not working on some real devices
    primarykey
    data
    text
    <p>I have a very strange problem with my Android application. In short my application uses an receiver that listens for SMS from a certain number, if the phone receives an SMS from that number it should play some different tones and vibrate in a specific pattern, it should also start another activity. </p> <p>This is working as intended on the avd emulator, but it does not work on all real android devices. Eg. it does not work, when it should start the activity it's just displaying a black screen, the application does not crash, just shows a totally black screen. On the other hand, on my friends phone the very same application works as it should, apart from that we have different vendors on the devices we also does not have the very same android version, I have 2.3.3 and my friend has 2.3.5. I don't really think this is the problem but FYI.</p> <p>I have connected my device to eclipse and did some debugging, but I can't find the problem. I don't know if it helps but below I have written some text from the Logcat, it's the activity ax.ha.it.smsalarm_jfbk/.AcknowledgeHandler that fails to start. I also write down how I start the activity.</p> <p>Start activity:</p> <pre><code> if(enableAlarmAck == true &amp;&amp; type.equals("primary")) { Intent ackIntent = new Intent(ctx,AcknowledgeHandler.class); ackIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ctx.startActivity(ackIntent); } </code></pre> <p>And the Logcat(sorry for the big log):</p> <pre><code>09-02 18:59:58.183: D/SMSDispatcher(224): New SMS Message Received 09-02 18:59:58.210: D/Gsm/SmsMessage(1151): SMS SC address: +358xxxxxxxxxx 09-02 18:59:58.210: D/Gsm/SmsMessage(1151): originatingAddress.address : +358xxxxxxxxxx 09-02 18:59:58.214: D/Gsm/SmsMessage(1151): SMS SC timestamp: 1346601684000 09-02 18:59:58.214: E/Gsm/SmsMessage(1151): hasUserDataHeader : false 09-02 18:59:58.222: D/Gsm/SmsMessage(1151): messageBody : Test 09-02 18:59:58.242: V/MmsSmsProvider(224): uri=content://mms-sms/threadID?recipient=xxxxxxxxxx 09-02 18:59:58.246: V/Telephony(224): getOrCreateThreadId cursor cnt: 1 09-02 18:59:58.394: D/SmsProvider(224): insert content://sms/1467 succeeded 09-02 18:59:58.406: V/AudioPolicyManager(84): setStreamVolumeIndex() stream 3, index 15 09-02 18:59:58.406: V/AudioPolicyManager(84): setStreamVolume() for output 1 stream 3, volume 0.668344, delay 0 09-02 18:59:58.406: I/FmReceiverService(231): BrdcstReceiver onReceive ACTION: android.media.VOLUME_CHANGED_ACTION 09-02 18:59:58.406: I/FMRadioService(129): mReceiver: VOLUME_CHANGED_ACTION 09-02 18:59:58.406: I/FMRadioService(129): stream: 3 09-02 18:59:58.406: I/FMRadioService(129): volume: 15 09-02 18:59:58.406: V/AudioPolicyManager(84): setStreamVolumeIndex() stream 10, index 15 09-02 18:59:58.406: V/AudioPolicyManager(84): setStreamVolume() for output 1 stream 10, volume 0.007499, delay 0 09-02 18:59:58.410: V/AudioHardwareALSA(84): setParameters(FMRadioVol=0.0074989409) 09-02 18:59:58.410: V/AudioHardwareALSA(84): FMRadioVol = 0.007499 09-02 18:59:58.410: I/AudioHardwareALSA(84): virtual android::status_t android::AudioHardwareALSA::setFmRadioVolume(float) : Volume = [0.007499] 09-02 18:59:58.410: V/AudioPolicyManager(84): setStreamVolumeIndex() stream 9, index 15 09-02 18:59:58.410: V/AudioPolicyManager(84): setStreamVolume() for output 1 stream 9, volume 1.000000, delay 0 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): Client(27) constructor 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): Create new client(27) from pid 1151, fd=39, offset=69, length=86475, audioSessionId=31 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): setDataSource fd=39, offset=69, length=86475 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): st_dev = 45826 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): st_mode = 33188 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): st_uid = 1000 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): st_gid = 1000 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): st_size = 2418792 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): player type = 1 09-02 18:59:58.414: V/ANDROID_DRM_TEST(84): create PVPlayer 09-02 18:59:58.414: V/PlayerDriver(84): PVSuspensionState struct constructor 09-02 18:59:58.414: V/PVPlayer(84): PVPlayer constructor 09-02 18:59:58.414: V/PVPlayer(84): construct PlayerDriver 09-02 18:59:58.414: V/PlayerDriver(84): constructor 09-02 18:59:58.414: V/PlayerDriver(84): OpenCore hardware module not found 09-02 18:59:58.414: V/PlayerDriver(84): start player thread 09-02 18:59:58.414: V/PlayerDriver(84): startPlayerThread 09-02 18:59:58.414: V/PlayerDriver(84): InitializeForThread 09-02 18:59:58.414: V/PlayerDriver(84): OMX_MasterInit 09-02 18:59:58.417: V/PlayerDriver(84): OsclScheduler::Init 09-02 18:59:58.417: V/PlayerDriver(84): CreatePlayer 09-02 18:59:58.437: V/PlayerDriver(84): AddToScheduler 09-02 18:59:58.437: V/PlayerDriver(84): PendForExec 09-02 18:59:58.437: V/PlayerDriver(84): OsclActiveScheduler::Current 09-02 18:59:58.437: V/PlayerDriver(84): StartScheduler 09-02 18:59:58.437: V/PVPlayer(84): send PLAYER_SETUP 09-02 18:59:58.437: V/PlayerDriver(84): Send player code: 2 09-02 18:59:58.437: V/PlayerDriver(84): CommandCompleted 09-02 18:59:58.437: V/PlayerDriver(84): Completed command PLAYER_SETUP status=1 09-02 18:59:58.441: V/AudioSink(84): AudioOutput(31) 09-02 18:59:58.441: V/PVPlayer(84): setDataSource(39, 69, 86475) 09-02 18:59:58.441: V/ANDROID_DRM_TEST(84): [27] setAudioStreamType(3) 09-02 18:59:58.441: V/ANDROID_DRM_TEST(84): [27] prepareAsync 09-02 18:59:58.441: V/PVPlayer(84): prepareAsync 09-02 18:59:58.441: V/PVPlayer(84): data source = sharedfd://40:69:86475 09-02 18:59:58.441: V/PlayerDriver(84): Send player code: 3 09-02 18:59:58.441: V/PlayerDriver(84): handleSetDataSource 09-02 18:59:58.441: V/PlayerDriver(84): handleSetDataSource- scanning for extension 09-02 18:59:58.441: D/(84): PVFile::GetFileName 09-02 18:59:58.445: V/PlayerDriver(84): CommandCompleted 09-02 18:59:58.445: V/PlayerDriver(84): Completed command PLAYER_SET_DATA_SOURCE status=1 09-02 18:59:58.445: V/PVPlayer(84): run_init s=0, cancelled=0 09-02 18:59:58.445: V/PlayerDriver(84): Send player code: 6 09-02 18:59:58.445: V/PlayerDriver(84): release string is 2.3.3 len 5 09-02 18:59:58.449: V/PlayerDriver(84): CommandCompleted 09-02 18:59:58.449: V/PlayerDriver(84): Completed command PLAYER_INIT status=1 09-02 18:59:58.449: V/PVPlayer(84): run_set_video_surface s=0, cancelled=0 09-02 18:59:58.449: V/PVPlayer(84): run_set_audio_output s=0, cancelled=0 09-02 18:59:58.449: V/PlayerDriver(84): Send player code: 5 09-02 18:59:58.449: V/PlayerDriver(84): Create realtime output 09-02 18:59:58.449: V/PlayerDriver(84): CommandCompleted 09-02 18:59:58.449: V/PlayerDriver(84): Completed command PLAYER_SET_AUDIO_SINK status=1 09-02 18:59:58.449: V/PVPlayer(84): run_prepare s=0, cancelled=0 09-02 18:59:58.449: V/PlayerDriver(84): Send player code: 7 09-02 18:59:58.449: V/PlayerDriver(84): disable natpkt - 0 09-02 18:59:58.460: V/PlayerDriver(84): HandleInformationalEvent: 44 09-02 18:59:58.460: V/PlayerDriver(84): HandleInformationalEvent: type=44 UNHANDLED 09-02 18:59:58.460: V/ANDROID_DRM_TEST(84): [27] notify (0x3f680, 200, 1, 44) 09-02 18:59:58.460: W/MediaPlayer(1151): info/warning (1, 44) 09-02 18:59:58.460: V/PlayerDriver(84): CommandCompleted 09-02 18:59:58.460: V/PlayerDriver(84): Completed command PLAYER_PREPARE status=1 09-02 18:59:58.460: V/PlayerDriver(84): PLAYER_PREPARE complete mDownloadContextData=0x0, mDataReadyReceived=0 09-02 18:59:58.460: V/ANDROID_DRM_TEST(84): [27] notify (0x3f680, 1, 0, 0) 09-02 18:59:58.460: V/ANDROID_DRM_TEST(84): [27] setVolume(0.000000, 0.000000) 09-02 18:59:58.460: V/AudioSink(84): setVolume(0.000000, 0.000000) 09-02 18:59:58.464: V/PVPlayer(84): check_for_live_streaming s=0, cancelled=0 09-02 18:59:58.472: V/AudioSink(84): open(44100, 2, 1, 4, 31) 09-02 18:59:58.472: V/AudioPolicyManager(84): getDeviceForStrategy() from cache strategy 0, device 2 09-02 18:59:58.472: V/AudioPolicyManager(84): getOutput() stream 3, samplingRate 0, format 0, channels c, flags 0 09-02 18:59:58.472: V/AudioSink(84): setVolume 09-02 18:59:58.472: V/PlayerDriver(84): HandleInformationalEvent: 41 09-02 18:59:58.472: V/PlayerDriver(84): .... with duration = 5146 ms 09-02 18:59:58.484: I/ActivityManager(129): Starting: Intent { flg=0x10000000 cmp=ax.ha.it.smsalarm_jfbk/.AcknowledgeHandler } from pid 1151 //&lt;--------The activity that fails to start 09-02 18:59:58.484: W/ActivityManager(129): Trying to launch ax.ha.it.smsalarm_jfbk/.AcknowledgeHandler 09-02 18:59:58.496: D/SMSDispatcher(224): BroadcastReceiver - mResultReceiver 09-02 18:59:58.496: D/SMSDispatcher(224): GcfMode : 09-02 18:59:58.496: E/SMSDispatcher(224): intent.getAction() : android.provider.Telephony.SMS_RECEIVED 09-02 18:59:58.496: D/SMSDispatcher(224): mResultReceiver : success = true 09-02 18:59:58.500: I/MediaPlayer(1151): Info (1,44) 09-02 18:59:58.562: I/Launcher(234): onResume(). mIsNewIntent : false 09-02 18:59:58.566: E/(234): onResume() check 0 09-02 18:59:58.566: V/ProgramMonitor(234): Binding::bindTaskManagerService() com.sec.android.widgetapp.programmonitorwidget.ProgramMonitorWidgetActivity$1@4056e350 com.sec.android.app.controlpanel.service.ITaskManagerService$Stub$Proxy@4063cef0 09-02 18:59:58.566: E/(234): onResume() check 1 09-02 18:59:58.566: E/Launcher(234): setWindowOpaque() 09-02 18:59:58.589: E/(234): onResume() check 2, mRestoring : false 09-02 18:59:58.589: E/(234): onResume() check 3 09-02 18:59:58.589: E/(234): onResume() check 4 09-02 18:59:58.589: E/(234): onResume() check 5 09-02 18:59:58.593: I/Launcher(234): onResume() ended 09-02 18:59:58.593: I/Launcher(234): onPause() 09-02 18:59:59.148: E/DataRouter(82): [*] Received suspend/ resume event but DUN is not up so neglect </code></pre> <p>AcknowledgeHandler.onCreate:</p> <pre><code> @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.ack); //Shared preferences final SharedPreferences sharedPref = this.getSharedPreferences(SmsAlarm.SHARED_PREF, Context.MODE_PRIVATE); //Get full message as string String fullMessage = sharedPref.getString(SmsAlarm.FULL_MESSAGE_KEY, ""); //Get acknowledge number final String ackNumber = sharedPref.getString(SmsAlarm.ACK_NUMBER, ""); TextView messageTextView = (TextView)findViewById(R.id.fullAlarmMessage); //Set larm text message to ui messageTextView.setText(fullMessage); //Find buttons and set the to button variables Button abortButton = (Button)findViewById(R.id.abortAlarm); Button ackButton = (Button)findViewById(R.id.acknowledgeAlarm); //Create objects that acts as listeners to the buttons abortButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { finish(); } }); //Create objects that acts as listeners to the buttons ackButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { //Check if user has given any number to call, else show toast if(!ackNumber.equals("")) { Intent callIntent = new Intent(Intent.ACTION_CALL); callIntent.setData(Uri.parse("tel:"+ackNumber)); startActivity(callIntent); } else { Toast.makeText(AcknowledgeHandler.this, R.string.cannotAck, Toast.LENGTH_LONG).show(); } } }); } </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload