2017-07-19 30 views
0

我使用webview和Javascript接口與Web應用程序進行通信。Android(服務類) - 只有第一次工作getApplicationContext()

例如,我有我的其他項目(工作版本)的通知代碼。

在我的OnCreate定義(靜態):

PACKAGE_NAME = getApplicationContext().getPackageName(); 

PACKAGE_NAME工作在通知方法但不getApplicationContext()getPackageName().I代替我固定。

1)如何創建= getApplicationContext變量()。getResources()

if (CURRENT__ == 1) { 
      contentNotify =new RemoteViews(PACKAGE_NAME , R.layout.big2); 
      contentNotifySmall = new RemoteViews(PACKAGE_NAME , R.layout.small1); 
     } 
     else { 
      contentNotify =new RemoteViews(PACKAGE_NAME, R.layout.big1); 
      contentNotifySmall = new RemoteViews(PACKAGE_NAME, R.layout.small2); 
     } 


icon = BitmapFactory.decodeResource(getApplicationContext().getResources(), R.drawable.ic_launcher); 
// NOT EXECUTE CODE FROM HERE (only first time) 
icon = BitmapFactory.decodeResource(getApplicationContext().getResources() , R.drawable.ic_launcher); 

mBuilder = new NotificationCompat.Builder(this); 
mBuilder.setShowWhen(false); 

etc. 

我第一次在mainActivity啓動服務,並在onStartCommand服務類我打電話通知方法。

之後,我從Javascript(JS界面)調用通知方法。

+0

你有什麼要求? –

+0

我想切換此getApplicationContext()。getResources()介紹變量... –

回答

1

Context.getApplicationContext().getResources()返回Resources對象,所以你可以將其存儲在:

Resources res = getApplicationContext().getResources();